css优先级和!important与ie6的BUG-css设计

王朝数码·作者佚名  2009-08-03
宽屏版  字体: |||超大  

一 css的优先级

今天有人跟我说css hack中用!important来区分ie6,因为ie6不支持!important,是的在很早以前我也是用过这种方法写hack,但是后来就基本不用了。本来我对他谁的ie6不支持!important也没什么异议,可是正好在前几天正好用个这个!important属性解决了一个样式优先级的问题,而且是支持ie6的,这是为什么呢?到底ie6支不支持!important呢?

首先我们来看看!important这个属性的作用:!important是用来提升样式优先级的,我们知道样式是有优先级的。

我们先看看css的优先级的几个基本的规则:

ID选择器(形如#id{}) 类选择器(形如.class{}) 标签选择器(形如body{}或者*{}),也就是ID选择器,类选择器,标签选择器中,ID选择器的优先级最高,标签选择器最低;

选择器越具体优先级就越高,也就是

.classA .classB .classC{font-size: 25px;}

.classB .classC{font-size:18px}

.classC { font-size: 12px; }

这里.classA .classB .classC的优先级最高,.classC的优先级最低;

在同一个级别的情况下,最后指定的规则优先级就越高,也就是我们通常说的就近原则;html中标签的style的属性都高于css文件中的选择器样式;

标有”!important”的规则有最高优先级。

我们可以利用!important使该样式优先级最高,例如:

CSS代码:

#idA{font-size:20px}

.classA{ font-size: 12px; }

HTML代码:

我要20像素的字

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有