CSS选择器的优先级

一.通常情况下,可以将CSS的优先级由高到低分为六组:

1.无条件优先的属性只需要在属性后面使用 !important 。它会覆盖页面内任何位置定义的元素样式。当然,IE 6不支持这个属性,于是它也成为一种hack被很多人所熟知,真正使命被人淡忘。

2.第二级的高位的优先属性是在html中给元素标签加style。由于该方法会造成CSS的难以管理,所以不推荐使用。

3.第三级优先的属性是由一个或多个id选择器来定义的。例如 #id{margin:0;} 会覆盖 .classname{margin:3px;}。

4.第四级的属性由一个或多个 类选择器、属性选择器、伪类选择器定义。如 .classname{margin:3px;} 会覆盖 div{margin:6px;}

5.第五级由一个或多个 类型选择器定义。如 div{margin:6px;} 覆盖 *{margin:10px;} 。

6.最低一级的选择器是为一个通配选择器,用*{margin:10px;}这样的类型来定义。

二.CSS选择器是一个非常灵活的CSS属性,优雅的使用它会使你的页面代码不再臃肿,而且还可以作为hack的妙用方法之一。当一个CSS选择器拥有更多的高级别属性时,它的优先级就会比较高

三 .当比较多个相同级别的CSS选择器优先级时,它们定义的位置将决定一切。下面从位置上将CSS优先级由高到低分为六级:

1.位于标签里的

posted @ 2014-09-28 22:05  山水如九画  阅读(458)  评论(0)    收藏  举报