《精彩绝伦的CSS》——提示(三)让元素“消失”
来源:互联网 发布:金蝶软件数据库职位 编辑:程序博客网 时间:2024/05/16 17:35
三、让元素消失
1、抑制元素的显示:display:none;
.hide{display:none;
}
应用了hide类的元素,就像不存在一样,不会对布局有任何影响。
然而这样子做会有两个陷阱,一个潜在的,一个固有的。
潜在的就是,如果通过js将display设为none那么想复原时该怎么做,因为原显示值可能是inline或者block又或者都不是,有个普遍的做法,即不指定任何值:
obj.style.display = '';
这会使默认恢复为在其css中设置的值,或者浏览器内置样式值。
另一个解决方法是,添加一个隐藏元素的类,当需要显示元素时将该类去掉。
固有问题就是,显示值为none时,元素无法被绝大多数的辅助技术(比如屏幕阅读器)“看到”。
2、抑制元素可见性:visibility:hidden;
该规则与display的区别是参与页面布局。但这对于绝对元素来说没有什么问题,因为它们已经不参与页面布局了。(绝对定位元素位于其他元素的上方,并且在对其他元素进行布局时不被考虑在内。)
但遗憾的是这种技术仍不能被绝大多数屏幕阅读器可见。
3、将元素移出屏幕
.hide{position:absolute;top:-10000em;left:-10000em;}
绝对定位移出屏幕。这样不仅会将元素移到视野之外,但是至少仍被某些屏幕阅读器识别。这就是这种技术会被当做隐藏元素的更佳选择的原因。
那么要将移出的元素移回来主要有三种方法:
(1).show{top:0;left:0}
(2).show{position:static;}
采用这种方式,就不需重设top和left的值了,因为在静态定位中这些属性将完全被忽略掉。无论你是否重设它们,都不会有任何差异。
(3).show{position:relative;top:0;left:0;}
- 《精彩绝伦的CSS》——提示(三)让元素“消失”
- 《精彩绝伦的CSS》——提示(二)无单位的行高值
- 《精彩绝伦的CSS》——选择器(二)为“目标”元素添加样式(:target)
- 《精彩绝伦的CSS》——选择器(一)伪类与伪元素
- 《精彩绝伦的CSS》——提示(一)属性值排序
- 《精彩绝伦的CSS》——提示(四)打印样式
- 《精彩绝伦的CSS》——选择器(三)特殊性和重要性
- 《精彩绝伦的CSS》——布局(三)遏制浮动
- 《精彩绝伦的CSS》——选择器(一)简写属性值
- 《精彩绝伦的CSS》——选择器(五)多种选择方式
- 《精彩绝伦的CSS》——布局(一)用轮廓代替边框
- 《精彩绝伦的CSS》——布局(二)居中块状框
- 《精彩绝伦的CSS》——布局(四)清除浮动
- 《精彩绝伦的CSS》——布局(五)两栏布局
- 《精彩绝伦的Android UI设计》之读书笔记
- 云计算三部曲之三:云端的精彩——让信息在指尖流动
- CSS篇——如何利用css让元素到另一个元素的后面
- 让你的右键菜单变成美艳绝伦
- SpringMVC 对象传递
- SpringMVC 集合传递
- 第三弹:微信小程序开发思考总结—“文章阅读器和电影信息”项目实践---阅读首页、阅读详情开发
- 算法设计与分析HW7:LeetCode56.Merge Intervals
- 深入讲解Android Property机制
- 《精彩绝伦的CSS》——提示(三)让元素“消失”
- My First RPG Game总结一
- 过滤器与拦截器之间的区别
- 最常用的15大Eclipse开发快捷键技巧
- 删数问题(贪心问题)
- 4.变量
- Codeforces 801C Voltage Keepsake 二分+精度
- 问题:absolute
- android4.0.3关于init.c和init.rc