css竞争规则
竞争规则:css允许多次将同一个规则赋予某个元素。层叠排序根据规则中使用的选择符将规则划分6组,高优先级组里的规则会覆盖低优先级组里的规则。普通的选择符会设置文档的总体样式,更具体的选择符会覆盖普通选择符,以为其提供更加特殊的样式
6个选择符群组:
1. 使用!important规则群组拥有最高优先级,他们会覆盖掉所有非!important规则
#i100 {border:6px solid black !important;}
2. 优先级第二高的群组是指那些嵌在style属性里面的规则。因为使用style属性会增加代码的维护难度,不建议使用
3. 优先级第三高的群组是指含有一个或多个ID选择符的规则,如 #i100 {border:6px solid black }会覆盖*.c100{border:4px solid black}
4. 优先级第四高的群组是指含有一个或多个类,属性或僞类选择符的规则,如*.c100{border:4px solid black}会覆盖div{border solid black}
5. 优先级第五高的群组是含有一个或多个元素选择符的规则,如div{border:2px solid black}会覆盖 *{ border:0px solid black}
6. 优先级最低的是只有通配符的规则
当竞争规则属于同一个选择符群组时,会按照选择符的种类和数量对其进行优先级排序,当选择符有高优先级选择符多于它的竞争选择符,它将获得更高的优先级。如#i00 *.c20 *.c10{}优先级高于#i100 *.c10 div p span{}
当竞争规则位于同一选择符群组并拥有同样等级和数量的选择符时,他们的优先级按所处位置来排,以下6个位置群组按从高到低优先级顺序排列:
1. 最高优先级位置为html文档头部中的<style>元素
2. 第二高是通过<style>元素里的@import语句来引入的样式表
3. 第三高是通过<link>元素来链接的样式表
4. 第四高是通过<link>链接的样式表通过@import语句引入的样式表
5. 第五高是由终端用户绑定的样式表,除非使用了!important
6. 最低优先级是浏览器提供的默认样
相关文档:
5种方法立刻写出更好的CSS代码
引自:http://bbs.seuuo.com/thread-2625-1-3.html
当然,每个人都可以编写CSS代码,甚至你现在已经让它为你的项目工作了。但是CSS还可以更好吗?开始用这5个Tips改进你的CSS吧!
1.重置
首先,很认真的告诉你,总是要重置某些分类。无论你是使用 Eric Meyer Reset、YUI Reset或者你自己编 ......
减少网站HTTP请求这是加快网站访问速度的关键,而CSS sprites技术是把多张图像组合成一张图像,这样用户在访问网站时一次性把多张图片加载完,而不需要一张张图片的加载,这样减少了组件的页码,建立更丰富的内容的网站,同时也取得了快速的反应
时间。
&n ......
/***************************by
garcon1986********************************/
区分
visibility:hidden
和
display:none
visibility:hidden
hides an element, but it will still take up the same space as before.
The element will be hidden, but still affect the layout.
Display: none
hides ......
示例:此DIV为固定定位对象
要使HTML元件定位于浏览器的某个固定位置,而不随滚动条滚动,用以下CSS代码即可,跨各个主流浏览器: POSITION: fixed! important; TOP: 100px; _position: absolute; _top: 40; _left: 100。
示例见右边黄底红字块。 ......
body{
background-image:url(about:blank);
background-attachment:fixed;
}
.myDiv{
position:fixed !important;
position:absolute;
top:expression(eval(document.documentElement.scrollTop));
}
body元素中background-image:url(about:blank);background-attachment:fixed;可防止ie6中出现闪 ......