|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。, L( S O5 u+ r! N- `: _7 B: ^
1 D" |$ m% Q7 y5 m1.基本语法规范
, J' E5 C% x2 L% i. ~4 M, V分析一个典型CSS的语句:
' _: e$ N6 N( X+ z1 g0 Np {COLOR:#FF0000;BACKGROUND:#FFFFFF} & ~4 F$ y- a3 P! m- l- E
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
# ]+ ^& ?7 i" r1 Q' Z样式声明写在一对大括号"{}"中; - {- Z( X, c8 G$ u- _- K
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 1 i3 o7 Q8 r) Q& d+ M
"#FF0000"和"#FFFFFF"是属性的值(value)。% e1 p: K1 h: a, I
9 R2 M/ R+ Y8 o! i" J' D2.颜色值
4 J) k3 t# Q0 E% M) y. F7 k# Z( s- p+ `( @/ g6 c' p
颜色值可以用RGB值写,例如:8 \( f! k. @9 q& k" F( T! h
# s7 s c. b4 l! x8 ]. A2 D
) m& o" T$ E" |# Z7 e
,也可以用十六进制写,就象上面例子
9 K: n r( C: K ]6 {. z( v6 W H/ D/ ?& z5 _0 R
" W/ R2 h% j$ L" f0 e6 F7 c3 k$ I
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。) d1 o* l6 M6 H: f" O$ l5 {% U( v
; j# f. y' q, ] b
3.定义字体
" ~$ i, Z e2 V( t# ^- Iweb标准推荐如下字体定义方法3 E0 f( J z8 F0 H5 r
! e! ~9 l; K; R0 _$ ]
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } : Z* v& C1 u& E+ m
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; " w3 k2 u) T; f. r0 X
Lucida Grande字体适合Mac OS X;
0 z( D- z5 n4 k( a g$ ^8 RVerdana字体适合所有的Windows系统; . T! u5 u, d; h0 v+ [6 s
Lucida适合UNIX用户
7 H' B$ c ^- D8 p"宋体"适合中文简体用户; ! x) ?! I8 Y$ e
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;1 D4 _6 S, I; r8 {
" ~' j, S4 a' K: Q$ b6 {1 N
4.群选择器
& t' _8 j) b8 t7 e
8 j! u9 `3 R R1 M; b/ u当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
9 T& ^. z/ Q$ `: v7 l
( T8 E3 \' \. Q p, td, li { font-size : 12px ; }
# G" O" y: c6 Y* a/ u$ m2 [就是给li下面的子元素strong定义一个斜体不加粗的样式 n/ o! n1 C/ Y, F
, N. { n9 X9 H; ^4 @4 [) E/ E6.id选择器$ |( G0 q- _/ L( O1 \9 x# v/ s
$ K6 m ~/ U ~% }7 ^" f# t0 b4 T用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层6 d# F5 K3 [7 x; W8 A% w3 }7 _# V, f
9 G0 x/ E" V1 n5 r! E- s: r! e O
" u: |/ F) i+ V6 G( `8 D然后在样式表里这样定义:
$ ^* z; \6 ]+ q2 D! S2 _/ `5 i6 N
9 v8 u5 n9 C2 ~0 A/ L#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 0 v! ]% B ?# J/ Y2 t
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
2 t, w$ F1 g" p% _% E! \, a7 d
& _. x9 r. X$ c2 h/ {3 Z. b! Rid选择器也同样支持派生,例如:
: _) T1 s5 O6 g#menubar p { text-align : right; margin-top : 10px; } - V' E' a! \" a g6 w
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
/ T/ m% e& b, c% U ~+ ^4 g5 B# c9 ~4 i5 B$ G' c* E! M$ ]
6.类别选择器
8 m. G# j! ?1 `" o" b. h& f2 c9 u) h# {$ p P
在CSS里用一个点开头表示类别选择器定义,例如:
) }4 e3 l3 S ?! ~% X! s.14px {color : #f60 ;font-size:14px ;} 1 Q7 R7 m G/ w t1 \
: i$ k" h& ~1 e; l9 V8 _在页面中,用class="类别名"的方法调用:
4 _& u. \; g/ {9 L<span class="14px">14px大小的字体</span>
0 p- @4 \' l2 Y: Q* {5 S" G
- T( M# Z, B* F, z这个方法比较简单灵活,可以随时根据页面需要新建和删除。
( p; j) y5 X2 z
; a( N+ t/ H0 p" E. m7.定义链接的样式" D0 G/ j7 Y; X9 C' b7 j
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:! y# S! H9 d1 Y. Z/ l
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
: |6 ~: ?8 L: O7 c0 q: b ]9 X! B8 Q" fa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;} h h. F0 X- @: r) c
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}6 ]: z0 h# [7 G( I
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
+ _% `$ O4 b3 ~# o7 [3 O- }$ ?/ o4 ?8 D7 Y; T I0 ], M
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|