|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。% ?" F+ a5 [ i" h0 X$ D6 H* B; q
% ?7 D% i' {% a2 Q
1.基本语法规范! G1 a6 m5 m" E7 M: |; ~# z
分析一个典型CSS的语句:
' e. F1 H& |( O) m1 ^& w2 a4 I' _! Wp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
, _' @: s" i- i3 [# _ z其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; $ h7 D& g. ?* a6 g1 |. f8 @
样式声明写在一对大括号"{}"中; # U+ ^# o! X- c( C- P9 I5 T
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; - n B) T( t$ ~. ?! d
"#FF0000"和"#FFFFFF"是属性的值(value)。4 I4 q# T6 S, \7 H
0 r. n4 D9 W) z0 y' g8 J
2.颜色值
3 m: ?) E3 b" J! U" M8 ~6 @! a5 r
3 p7 M( T0 }7 M D颜色值可以用RGB值写,例如:
- N: J4 {4 ]9 {% |& N0 V& e6 D' a& e
9 ~! ^) Y) z( ^& e+ U
,也可以用十六进制写,就象上面例子/ x o8 ~) L* e- v3 s
) M2 m1 M! D- l! a- B% [2 w
% ^1 H- l2 g; g, x9 m' ~
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。# P' T2 E+ o6 r P0 m
H4 h9 u5 A+ B+ {6 ]3.定义字体
( h/ c0 J. |8 R- t5 G" k, I2 G. p8 p+ eweb标准推荐如下字体定义方法6 e- y% m! u3 Z2 A9 u( v
' A1 B5 b7 ?3 |9 R+ g A
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
0 Q3 d* B8 H! U4 j, k5 J5 B0 r字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 6 Y7 v0 Q* e0 l* x6 y+ c
Lucida Grande字体适合Mac OS X;
# e: a! M! h- x O; @" p5 \Verdana字体适合所有的Windows系统; $ b) ~2 A# z0 g i+ F
Lucida适合UNIX用户 9 M. I$ [; g: u1 p" l6 F
"宋体"适合中文简体用户;
+ T. s; u$ Q! r# ]6 ~) u如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;6 d# N& K9 P$ \
6 Q; ~. x+ y. }
4.群选择器7 |) R8 |7 O$ y# E8 S+ `: g7 N
; V. Q. ?: Q f( ~6 u当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
. O" X7 F8 \( ?7 a7 X* _
. P1 h- D* D7 F* Q p, td, li { font-size : 12px ; }
+ k) t) w3 S" L/ F+ j; J就是给li下面的子元素strong定义一个斜体不加粗的样式
( c/ u4 k# Y* I% k* _# R# a4 A3 \0 Q6 S. s) i& Y
6.id选择器 L* W! M* T. D* U6 O5 C
% ?8 u! ]+ f6 W4 z2 n+ y( J用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层9 a( _. l' x9 \% g' l O$ b7 E; ^
7 s% E, ~7 @3 Z V) k2 ?! T7 O0 L
) x. K3 i4 C/ t: m* `* m, L' V
然后在样式表里这样定义:
- ^% U( B% V4 {4 G) w& ^' o
' U9 d7 p; j7 `. e R/ W
; w5 m1 R1 m4 V" K' ?$ _#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} " W4 Z$ i9 g! y
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。/ |* |3 ] g: X$ T" |
, Z4 S5 s/ M# q6 H. @id选择器也同样支持派生,例如:
2 B! p9 b( g ^ M" d#menubar p { text-align : right; margin-top : 10px; }
4 v$ g2 h% |: w* Z& ]( j这个方法主要用来定义层和那些比较复杂,有多个派生的元素。7 ~. L" l k$ Q- g, k' W( |2 K4 o
2 T5 }, n& U; l6 h, `6.类别选择器
2 a, w# x6 C2 S5 C. d2 `; T0 S* _
% z2 ?, m, K1 Q! P8 F4 Q5 q在CSS里用一个点开头表示类别选择器定义,例如:
9 L. n4 K( {8 j8 @0 R7 ^.14px {color : #f60 ;font-size:14px ;}
# n: D4 h# t9 ?" {; z2 L$ j4 C5 q$ j: U: F N: B& S+ }8 g
在页面中,用class="类别名"的方法调用:
' j0 f) b( e5 o, p m. g<span class="14px">14px大小的字体</span> 5 y* i E, t1 h
1 Y8 e* q" M1 [3 M2 _这个方法比较简单灵活,可以随时根据页面需要新建和删除。
4 N T3 q1 U$ H( D5 L' y; f: l: B3 P8 E# G7 J% K+ ^4 a
7.定义链接的样式0 P8 R6 n N- f1 {7 {
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
& N$ ]$ T: C7 y5 i& w1 Za:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
1 @0 k6 Q6 X: m( j$ Va:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
6 n9 S" J# c! K; x0 t h( j1 z% k" la:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
) F9 e: @1 `$ B H' C& va:active {font-weight : bold ;text-decoration : none ;color : #90 ;} . i: |. B& g8 T
4 H# F- v# t* M, S+ F6 P1 l) t3 ~: Q1 U
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|