CSS的十八般技巧(2)
为了节省字节,我建议不要给背景图片路径加引号,因为引号不是必须的。例如:【来自:开店乐KaiDianLe.Com】
background:url("images/***.gif") #333;可以写为
background:url(images/***.gif) #333;如果你加了引号,反而会引起一些浏览器的错误。
十一.组选择器(Group selectors)当一些元素类型、class或者id都有共同的一些属性,你就可以使用组选择器来避免多次的重复定义。这可以节省不少字节。
例如:定义所有标题的字体、颜色和margin,你可以这样写:
h1,h2,h3,h4,h5,h6 {如果在使用时,有个别元素需要定义独立样式,你可以再加上新的定义,可以覆盖老的定义,例如:
h1 { font-size:2em; }当你用CSS来定义链接的多个状态样式时,要注意它们书写的顺序,正确的顺序是::link :visited :hover :active。抽取第一个字母是"LVHA",你可以记忆成"LoVe HAte"(喜欢讨厌)。为什么这么定义,可以参考Eric Meyer的《Link Specificity》。
如果你的用户需要用键盘来控制,需要知道当前链接的焦点,你还可以定义:focus属性。:focus属性的效果也取决与你书写的位置,如果你希望聚焦元素显示:hover效果,你就把:focus写在:hover前面;如果你希望聚焦效果替代:hover效果,你就把:focus放在:hover后面。
十三.清除浮动一个非常常见的CSS问题,定位使用浮动的时候,下面的层被浮动的层所覆盖,或者层里嵌套的子层超出了外层的范围。
通常的解决办法是在浮动层后面添加一个额外元素,例如一个div或者一个br,并且定义它的样式为clear: both。这个办法有一点牵强,幸运的是还有一个好办法可以解决,参看这篇文章《How To Clear Floats Without Structural Markup》(注:本站将尽快翻译此文)。
上面2种方法可以很好解决浮动超出的问题,但是如果当你真的需要对层或者层里的对象进行clear的时候怎么办?一种简单的方法就是用overflow属性,这个方法最初的发表在《Simple Clearing of Floats》,又在《Clearance》和《Super simple clearing floats》中被广泛讨论。
上面那一种clear方法更适合你,要看具体的情况,这里不再展开论述。另外关于float的应用,一些优秀的文章已经说得很清楚,推荐你阅读:《Floatutorial》、《Containing Floats》和《Float Layouts》
十四.横向居中(centering)这是一个简单的技巧,但是值得再说一遍,因为我看见太多的新手问题都是问这个:CSS如何横向居中?你需要定义元素的宽,并且定义横向的margin,如果你的布局包含在一个层(容器)中,就象这样:
你可以这样定义使它横向居中:
#wrap {但是IE5/Win不能正确显示这个定义,我们采用一个非常有用的技巧来解决:用text-align属性。就象这样:
body {第一个body的text-align:center; 规则定义IE5/Win中body的所有元素居中(其他浏览器只是将文字居中) ,第二个text-align:left;是将#warp中的文字居左。
十五.导入(Import)和隐藏CSS因为老版本浏览器不支持CSS,一个通常的做法是使用@import技巧来把CSS隐藏起来。例如:
@import url("main.css");然而,这个方法对IE4不起作用,这让我很是头疼了一阵子。后来我用这样的写法:
@import "main.css";这样就可以在IE4中也隐藏CSS了,呵呵,还节省了5个字节呢。想了解@import语法的详细说明,可以看这里《centricle’s css filter chart》
十六.针对IE的优化有些时候,你需要对IE浏览器的bug定义一些特别的规则,这里有太多的CSS技巧(hacks),我只使用其中的两种方法,不管微软在即将发布的IE7 beta版里是否更好的支持CSS,这两种方法都是最安全的。
另外一种方法,我认为比CSS Hacks更加经得起考验就是采用微软的私有属性条件注释(conditional comments)。用这个方法你可以给IE单独定义一些样式,而不影响主样式表的定义。就象这样:
<!--[if IE]>当调试CSS发生错误,你就要象排版工人,逐行分析CSS代码。我通常在出问题的层上定义一个背景颜色,这样就能很明显看到层占据多大空间。有些人建议用border,一般情况也是可以的,但问题是,有时候border 会增加元素的尺寸,border-top和boeder-bottom会破坏纵向margin的值,所以使用background更加安全些。
另外一个经常出问题的属性是outline。outline看起来象boeder,但不会影响元素的尺寸或者位置。只有少数浏览器支持outline属性,我所知道的只有Safari、OmniWeb、和Opera。
十八.CSS代码书写样式在写CSS代码的时候,对于缩进、断行、空格,每个人有每个人的书写习惯。在经过不断实践后,我决定采用下面这样的书写样式:
selector1,当使用联合定义时,我通常将每个选择器单独写一行,这样方便在CSS文件中找到它们。在最后一个选择器和大括号{之间加一个空格,每个定义也单独写一行,分号直接在属性值后,不要加空格。
我习惯在每个属性值后面都加分号,虽然规则上允许最后一个属性值后面可以不写分号,但是如果你要加新样式时容易忘记补上分号而产生错误,所以还是都加比较好。
最后,关闭的大括号}单独写一行。
空格和换行有助与阅读。
【日期:2006-10-19】【作者:不祥】【转载自:开店乐】
相关文章:
最好的网上开店系统:凡人网络购物系统免费下载
定位你的网站CI形象
网页布局理念
主页的艺术处理
怎样设计首页?(解答)
新颜:经典品牌logo的web2.0版
世界顶尖网页设计师作品
韩国站点精选
服装网站
商业网站设计主要原则
几千个3D及素材网址收集!
网站欣赏0131
网站欣赏0130
网站欣赏013
网站欣赏0219
网站欣赏0218
网站欣赏0216
网站欣赏0215
网站欣赏0214
网站欣赏0213
网站欣赏0211
网站欣赏0212
网站欣赏021
网站欣赏0119
网站欣赏0118
网站欣赏0117
网站欣赏0115
网站欣赏011
网站欣赏113
网站欣赏112
网站欣赏111
网站欣赏110
网站欣赏109
网站欣赏108
网站欣赏108
网站欣赏107
网站欣赏107
网站欣赏106
网站欣赏105
网站欣赏104
网站欣赏103
网站欣赏102
网站欣赏101
网站欣赏10
网站欣赏99
网站欣赏98
网站欣赏97
网站欣赏96
网站欣赏95
网站欣赏94
网站欣赏93
网站欣赏92
网站欣赏91
网站欣赏90
网站欣赏9
网站欣赏89
网站欣赏88
网站欣赏87
网站欣赏86
网站欣赏85
网站欣赏84
网站欣赏83
网站欣赏82
网站欣赏81
网站欣赏80
网站欣赏8
网站欣赏79
网站欣赏78
网站欣赏77
网站欣赏76
网站欣赏75
网站欣赏74
网站欣赏73
网站欣赏72
网站欣赏71
网站欣赏70
网站欣赏7
网站欣赏69
网站欣赏68
网站欣赏67
网站欣赏66
网站欣赏65
网站欣赏64
网站欣赏63
网站欣赏62
网站欣赏61
网站欣赏60
网站欣赏6
网站欣赏59
网站欣赏58
网站欣赏57
网站欣赏56
网站欣赏55
网站欣赏54
网站欣赏53
网站欣赏52
网站欣赏51
网站欣赏50
网站欣赏5
网站欣赏49
网站欣赏48
版权所有:Kaidianle.Com 联系方式:Shnxn@Yhaoo.Com.Cn 京ICP备06028743号 在线留言