一.使用css缩写( J* N ~7 D! C& v) G
使用缩写可以帮助减少你css文件的大小,更加容易阅读。css缩写的主要规则请参看《css基本语法》。4 Q0 p2 |! h; p: Z7 R
二.明确定义单位,除非值为0
; o6 ?4 P. Z# h% N3 Q( ~ F忘记定义尺寸的单位是css新手普遍的错误。在html中你可以只写;100,但是在css中,你必须给一个准确的单位,比如: width:100em。只有两个例外情况可以不定义单位:行高和0值。除此以外,其他值都必须紧跟单位,注意,不要在数值和单位之间加空格。
. _7 _" o0 l# I三.区分大小写6 Y, v( a2 e& j& `5 A9 O8 k
当在xhtml中使用css,css里定义的元素名称是区分大小写的。为了避免这种错误,我建议所有的定义名称都采用小写。; u! y" E) L2 q; P, T
class和id的值在html和xhtml中也是区分大小写的,如果你一定要大小写混合写,请仔细确认你在css的定义和xhtml里的标签是一致的。
3 e+ j2 `, ]+ @四.取消class和id前的元素限定+ e) C4 H# v, R/ `7 b0 V
当你写给一个元素定义class或者id,你可以省略前面的元素限定,因为id在一个页面里是唯一的,鴆las s可以在页面中多次使用。你限定某个元素毫无意义。例如: l" C8 f! o d, \5 g
div#content { /* declarations */ }
- H; \+ y& [$ Zfieldset.details { /* declarations */ }" Q& V2 n+ D9 q) `
可以写成) V0 d8 i% D7 n
#content { /* declarations */ } : ? ?1 }+ X8 D# I2 V
.details { /* declarations */ }
/ ]" }5 L/ N6 a P这样可以节省一些字节。
9 t( W9 t. q8 X, T- u五.默认值2 h4 v: c* E# G7 y
通常padding的默认值为0,background-color的默认值是transparent。但是在不同的浏览器默认值可能不同。如果怕有冲突,可以在样式表一开始就先定义所有元素的margin和padding值都为0,象这样:9 C4 y: n. ~: K2 F" c5 O
* {
+ y+ z$ i$ v4 p, D' {margin:0; 4 _5 J# R0 s4 I7 f6 P+ O& P
padding:0; 9 H( c8 d7 P# U- `
}
6 B8 Z1 W8 b- |6 W六.不需要重复定义可继承的值$ H6 a4 }% }2 a( w% ]( y
css中,子元素自动继承父元素的属性值,象颜色、字体等,已经在父元素中定义过的,在子元素中可以直接继承,不需要重复定义。但是要注意,浏览器可能用一些默认值覆盖你的定义。
& @7 X; Z5 [) s" P# W. ^$ T# t七.最近优先原则6 t7 S+ J/ T$ \! ?$ X
如果对同一个元素的定义有多种,以最接近(最小一级)的定义为最优先,例如有这么一段代码
% i0 x7 b) C9 a: S% ?update: lorem ipsum dolor set) H a( T/ f! h5 H, I
在css文件中,你已经定义了元素p,又定义了一个classupdate
; Y! X: _, d7 A' zp {
2 Y6 {5 p4 k! ^0 H! l6 hmargin:1em 0; 9 E+ h# ?5 ]# a6 F- ?( |, J
font-size:1em;
& k3 f: Q$ f9 t, Bcolor:#333;
& z3 G, ]1 r, z) V0 B/ p} " h1 K5 Q1 B- S7 `: m% {" ~. A
.update { 6 O+ j7 X0 ]! V
font-weight:bold;
- D+ y, r* O. ~2 Lcolor:#600; - z8 q5 R# s, F8 u! x- m
}8 N. U8 w! n5 B- _6 j, H$ `0 F9 \
这两个定义中,class=update将被使用,因为class比p更近。你可以查阅w3c的《 calculating a selector’s specificity》 了解1 S1 E4 ` Q6 I
更多网页制作信息请查看: 网页制作 |
|