词条 | css important |
释义 | 定义及语法 !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权。语法格式{ cssRule !important },即 写在定义的最后面,例如:box{color:red !important;} W3c的解释 CSS企图创造一个平衡作者和用户之间的级层样式表。 默认情况下,CSS规则按级层覆盖,例如在.CSS文件中的定义可以被style标签的定义覆盖,反之则不行。 然而,对覆盖平衡而言,加上一个“!important”就优先于正常的CSS规则。 例: p { text-indent: 1em ! important } p { font-style: italic ! important } p { font-size: 18pt } p { text-indent: 1.5em} p { font: normal 12pt sans-serif} p { font-size: 24pt } 在这些规则中 未被覆盖的有: p { text-indent: 1em ! important } p { font-style: italic ! important } p { font-size: 24pt } 浏览器识别 ie7,ie8,firefox,chrome等高端浏览器下,已经可以识别 !important属性, 但是IE 6.0仍然不能识别,! important,最主要是为了IE 6.0浏览器。 案例解析 最重要的一点是:IE 6.0一直都不支持这个语法,而其他的浏览器都支持。因此我们就可以利用这一点来分别 给IE和其他浏览器不同的样式定义,例如,我们定义这样一个样式: .colortest { border:20px solid #60A179 !important; border:20px solid #00F; padding: 30px; width : 300px; } 在Mozilla中浏览时候,能够理解!important的优先级,因此显示#60A179的颜色: 在IE中浏览时候,不能够理解!important的优先级,因此显示#00F的颜色: 可以看到,利用!important,我们可以针对IE和非IE浏览器设置不同的样式,只要在非IE浏览器样式的后面加 上!important。 ie6不完全支持!important 案例解析IE支持重定义中的!important,例如: .yuanxin {color:#e00!important;} .yuanxin {color:#000;} 你将会发现定义了样式class="yuanxin"时,在IE下,字体显示为红色(#e00)。 但不支持同一定义中的!important。例如: .yuanxin {color:#e00!important;color:#000} 此时在IE6下不支持,你将会发现定义了样式class="yuanxin"时,字体显示为黑色(#000)。 ie6中: /*样式1*/ #a{width:100 !important} /*有效*/ #a{width:50px} /*无效*/ /*样式2*/ #a{width:100px !important; width:50px;} /*width:100px无效,width:50px 有效*/ |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。