一.使用css缩写0 r* z, E- T/ k8 ^ \, D" l
使用缩写可以帮助减少你css文件的大小,更加容易阅读。css缩写的主要规则请参看《css基本语法》。; [9 N! A) R# T; N/ J9 C- a8 e- C
二.明确定义单位,除非值为0& t" N ?* y4 X# D/ {) {* E
忘记定义尺寸的单位是css新手普遍的错误。在html中你可以只写;100,但是在css中,你必须给一个准确的单位,比如: width:100em。只有两个例外情况可以不定义单位:行高和0值。除此以外,其他值都必须紧跟单位,注意,不要在数值和单位之间加空格。
) H* i( a3 o9 A0 ~/ c7 |* U三.区分大小写8 X! s( l* L3 R5 j
当在xhtml中使用css,css里定义的元素名称是区分大小写的。为了避免这种错误,我建议所有的定义名称都采用小写。
$ x/ `- F8 O: A. E1 \class和id的值在html和xhtml中也是区分大小写的,如果你一定要大小写混合写,请仔细确认你在css的定义和xhtml里的标签是一致的。" U: f: Z6 ^. [: O5 K: e( ` B
四.取消class和id前的元素限定 s3 K6 Z( Y& r3 z$ `
当你写给一个元素定义class或者id,你可以省略前面的元素限定,因为id在一个页面里是唯一的,鴆las s可以在页面中多次使用。你限定某个元素毫无意义。例如:
) y2 \9 f4 ~1 g5 \0 ?6 ldiv#content { /* declarations */ } 1 Y9 `0 k2 y& E+ y, S' N
fieldset.details { /* declarations */ }
4 K5 F q/ D9 N @可以写成
7 m* G# M M7 ~2 o3 j' x, |#content { /* declarations */ } # e1 b; z X: }9 r! S9 a
.details { /* declarations */ }
4 I0 k1 o0 o8 P3 u这样可以节省一些字节。
, S/ A5 F/ _* P$ V5 p+ b! d五.默认值
! n8 X" x1 r' k$ z) R/ _9 J' a通常padding的默认值为0,background-color的默认值是transparent。但是在不同的浏览器默认值可能不同。如果怕有冲突,可以在样式表一开始就先定义所有元素的margin和padding值都为0,象这样:" x6 D( c2 @; D: @6 ~) }1 [
* { 1 o1 X% G7 k* \; A7 L
margin:0; ; ?) x8 a1 _5 W" b
padding:0;
' v/ h& H/ A- X: N}: n& m- H2 o; |& b( I
六.不需要重复定义可继承的值
" y% u- M9 W+ Z" A6 Zcss中,子元素自动继承父元素的属性值,象颜色、字体等,已经在父元素中定义过的,在子元素中可以直接继承,不需要重复定义。但是要注意,浏览器可能用一些默认值覆盖你的定义。
# u( W. t" r/ J7 J( B7 g7 V: w5 x七.最近优先原则4 y2 J+ f" L) I
如果对同一个元素的定义有多种,以最接近(最小一级)的定义为最优先,例如有这么一段代码
1 s4 z! W$ A; |3 I1 x# n/ {9 ?update: lorem ipsum dolor set
+ U/ V7 \8 e) [! Y$ r在css文件中,你已经定义了元素p,又定义了一个classupdate
* R( e; [" n2 L- Gp {
0 f2 Y3 P9 a2 i$ B0 ymargin:1em 0;
, U& K% p! O6 a* O+ c) R. ?% N v- efont-size:1em; 6 x0 o7 Q; g7 |- X- @3 T" f9 M" C/ [
color:#333;
' P1 X t9 }# J. m9 d}
, F% q$ x w/ b- w.update {
" h& I4 u1 }5 g' x2 {font-weight:bold; 6 A2 b% X+ G8 C2 Q& H5 Z0 `
color:#600;
9 b/ V1 C5 Y: B}
) n: t5 p4 _7 |: }8 O& Q这两个定义中,class=update将被使用,因为class比p更近。你可以查阅w3c的《 calculating a selector’s specificity》 了解
+ c3 y4 ^) y" W8 z# _更多网页制作信息请查看: 网页制作 |
|