|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
( I6 B3 i+ u7 W" m0 M8 z7 W! \
1.基本语法规范
5 {" e! H% r9 d, q9 _9 X! ?分析一个典型CSS的语句:. x( a$ A, n2 }1 d
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
+ D Z: w! B1 `# L4 y0 M: r$ Y5 M' _其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 2 \( C% @ s$ M/ O
样式声明写在一对大括号"{}"中; & Y* n. i1 V9 T" [% U
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ) r/ Y* p- P4 j+ B4 G1 M& e B
"#FF0000"和"#FFFFFF"是属性的值(value)。
% o0 x1 y8 ] }2 j. [7 B$ H( s; h' X& v O* c1 z7 \, c: `
2.颜色值
0 Q* Y- \# L6 @1 q
& A. |5 ]' O: s v* l7 V" F$ l& ~颜色值可以用RGB值写,例如:" K" O$ w: [" S0 _
' {. J: }. ^4 p3 Y5 a" L3 Q2 Y, L
- w* u" b) V$ E, v,也可以用十六进制写,就象上面例子- w: B) u+ A+ m% J3 T' h6 p
3 J6 P) Q9 m k0 d. f
, h3 e+ v$ ~4 h' Z; t$ _9 ?
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
8 O, L$ Q7 H# c# o2 W" ]9 s: G5 D$ E. c: C
3.定义字体
) s$ \: N9 f: fweb标准推荐如下字体定义方法( [4 X: i1 y( ~ v$ n ]7 K
* k' j( L. m8 |' Z9 m; F/ R
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 1 E& u8 K$ V6 j/ P6 t7 R
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; : S ?+ Q6 g A4 m* {; g2 J
Lucida Grande字体适合Mac OS X;
' a" M$ n% q6 v) I7 JVerdana字体适合所有的Windows系统; / V. r$ p+ Y2 a. Y0 M% ?
Lucida适合UNIX用户 3 A k9 n5 P# F H |6 d2 O2 z
"宋体"适合中文简体用户; 5 W* t; B) W; e
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
9 v0 s* j6 u' i2 d" c
0 G* x' ^' F' b4 ?" y" C4.群选择器
2 F2 Z( u1 y4 R# G ?' r" y I% k& J% {6 ]* A; x) d
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:& u) n; A! \- N5 S5 m! v$ s4 W
3 m4 h* }; L% z0 I& h p, td, li { font-size : 12px ; } ( |& }9 B" h' @; P7 f8 @
就是给li下面的子元素strong定义一个斜体不加粗的样式
- g8 i- ]+ v j# [6 X4 M* t
$ b/ E% j5 z( `$ n6.id选择器' a$ a6 h7 W* A& w5 a6 A6 @: n* m
3 E! r2 A1 s7 l. r* }
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层+ T k+ ~% O& `) |# T8 ^+ B
8 b% a$ a8 b/ ~5 ~0 C: \' P- D
+ T0 _9 T/ R0 t) K然后在样式表里这样定义:
2 `) j( j7 H/ h
" R5 m( S$ {8 D; ?4 n0 y
4 ^% a4 M' A( n9 N- t6 o' E6 Z( x#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 2 g# ]5 H6 ? q. i+ t9 u s8 q
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。; C& k$ ~8 ^' e% U! D0 i
" }9 E r2 L) o) K* Z
id选择器也同样支持派生,例如:9 f% c# K" a1 Y7 Q* L
#menubar p { text-align : right; margin-top : 10px; } {6 k& o( X1 `- e$ e+ ?7 q
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
; l- K) n# d, }, Q7 }) c1 r% z$ \5 G7 {8 a4 f
6.类别选择器1 K' b' f- {4 m
/ s1 [& q T2 s8 `: j$ M- N: A- y
在CSS里用一个点开头表示类别选择器定义,例如:
4 Y) K7 J2 D P# [. C; }.14px {color : #f60 ;font-size:14px ;} 1 X5 `3 q n, Y' b; d* w# j
3 \8 K* z+ l q/ f! ~
在页面中,用class="类别名"的方法调用:( T/ \: X( Z. G9 q8 M: Y
<span class="14px">14px大小的字体</span>
+ o6 d) ^) w; o# S: `' x8 o) n1 E1 D' o- l4 g
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
M7 H% k' T! ^3 ], P/ }1 v: r0 P9 F& S3 ~% Z
7.定义链接的样式) m& {( _% i5 Z
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:) `$ ?( I: m4 I
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}1 X. n: l! }: R6 y" o. s' J7 ^$ K
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
2 G' v# K/ c" ~8 d: m) ^. ia:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}1 `4 N1 J, p) h6 h
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
% G; o4 v1 l5 K7 _4 T( k! D! i+ j
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|