我总结的 css样式表的使用技巧【三】

Posted on 2009-06-04 14:29  bet520的博客  阅读(3068)  评论(10)    收藏  举报

接上篇讲 :

 

.多重class定义

 

一个标签可以同时定义多个class。例如:我们先定义两个样式,第一个样式背景为#666;第二个样式有10 px的边框。

 

.one{width:200px;background:#666;}

 

.two{border:10px solid #F00;}

 

在页面代码中,我们可以这样调用

 

<div class="one two"></div>

 

这样最终的显示效果是这个div既有#666的背景,也有10px的边框。

 

 

.使用子选择器(descendant selectors)

 

CSS初学者不知道使用子选择器是影响他们效率的原因之一。子选择器可以帮助你节约大量的class定义。我们来看下面这段代码:

 

<div id="subnav">

 

<ul>

 

<li class="subnavitem"> <a href="#" class="subnavitem">Item 1</a></li>>

 

<li class="subnavitemselected"> <a href="#" class="subnavitemselected"> Item 1</a> </li>

 

<li class="subnavitem"> <a href="#" class="subnavitem"> Item 1</a> </li>

 

</ul>

 

</div>

 

这段代码的CSS定义是:

 

div#subnav ul { /* Some styling */ }

 

div#subnav ul li.subnavitem { /* Some styling */ }

 

 div#subnav ul li.subnavitem a.subnavitem { /* Some styling */ }

 

 div#subnav ul li.subnavitemselected { /* Some styling */ }

 

div#subnav ul li.subnavitemselected a.subnavitemselected { /* Some styling */ }

 

 你可以用下面的方法替代上面的代码

 

 <ul id="subnav">

 

 <li> <a href="#"> Item 1</a> </li>

 

 <li class="sel"> <a href="#"> Item 1</a> </li>

 

 <li> <a href="#"> Item 1</a> </li>

 

 </ul>

 

 样式定义是:

 

 #subnav { /* Some styling */ }

 

 #subnav li { /* Some styling */ }

 

 #subnav a { /* Some styling */ }

 

 #subnav .sel { /* Some styling */ }

 

 

#subnav .sel a { /* Some styling */ }

 

 用子选择器可以使你的代码和CSS更加简洁、更加容易阅读。

 

 

 .不需要给背景图片路径加引号

 

 为了节省字节,我建议不要给背景图片路径加引号,因为引号不是必须的。例如:

 

 background:url("images/***.gif") #333;

 

 可以写为

 

 background:url(images/***.gif) #333;

 

 

 如果你加了引号,反而会引起一些浏览器的错误。

 

 

 

十一.组选择器(Group selectors)

 

 

 

当一些元素类型、class或者id都有共同的一些属性,你就可以使用组选择器来避免多次的重复定义。这可以节省不少字节。

 

 

 

例如:定义所有标题的字体、颜色和margin,你可以这样写:

 

 

 

h1,h2,h3,h4,h5,h6 {

 

 

 

font-family:"Lucida Grande",Lucida,Arial,Helvetica,sans-serif;

 

 color:#333;

 

 

 margin:1em 0;

 

 

}

 

 

如果在使用时,有个别元素需要定义独立样式,你可以再加上新的定义,可以覆盖老的定义,例如:

 

 

 h1 { font-size:2em; }

 

 h2 { font-size:1.6em; }

 

 

 

十二.用正确的顺序指定链接的样式

 

当你用CSS来定义链接的多个状态样式时,要注意它们书写的顺序,正确的顺序是::link :visited :hover :active。抽取第一个字母是"LVHA",你可以记忆成"LoVe HAte"(喜欢讨厌)。为什么这么定义,可以参考Eric Meyer的《Link Specificity》。

 

 

如果你的用户需要用键盘来控制,需要知道当前链接的焦点,你还可以定义:focus属性。:focus属性的效果也取决与你书写的位置,如果你希望聚焦元素显示:hover效果,你就把:focus写在:hover前面;如果你希望聚焦效果替代:hover效果,你就把:focus放在:hover后面。

 

 

css样式表的使用技巧【三】

第三讲完毕,请达人多多指点!