|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。, f* |. V1 x- ~4 z
( a- A4 n# L7 u& @
1.基本语法规范, H; }) u: V% [& x" F1 G
分析一个典型CSS的语句:3 U0 H1 h0 A: X% @* D
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} . Y8 a9 r$ G% U3 ~1 ~4 q+ \
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
- }3 C4 l* I. y6 Z样式声明写在一对大括号"{}"中;
+ y! S v9 Y" X# t: W3 u* g( i/ \COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
9 K/ t4 h1 {& x3 W"#FF0000"和"#FFFFFF"是属性的值(value)。
& s5 M1 }& }3 b+ u& u% z9 M/ O; ~
) [) |9 @+ i- g, o) k5 D' T2.颜色值
" N) E' E' ~; R9 Y0 ~
( X9 g$ G. v- S/ w/ P, Q3 e颜色值可以用RGB值写,例如:
7 }, p' z9 g% y' l( ?7 d, ^
& X; w4 ~% }! k8 N: |4 A: E7 v3 Y6 K% ]) d/ h8 b
,也可以用十六进制写,就象上面例子+ a% E2 r5 G0 Q, A
) l6 n$ y4 L+ a" x; [" s
" {) i5 R+ d0 H3 k; M6 D g如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
" Z% U! k* ?& z" c$ @# \: `8 T5 R1 D4 @' S3 L# R
3.定义字体
3 ?. A6 k7 O" oweb标准推荐如下字体定义方法5 d% B* i: ~; x: Y# i( c
- O& t, {: D1 c5 g3 wbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
" |6 W/ j8 F2 V7 @' E字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; , T w! m! v; v2 {- i/ F( z6 F
Lucida Grande字体适合Mac OS X; 9 \7 G0 ?9 P! J/ Q* H
Verdana字体适合所有的Windows系统;
! N( i; U/ @ I& o1 B5 ILucida适合UNIX用户
) Q% s, ]- G9 {+ |, s"宋体"适合中文简体用户;
$ V: W) n) [3 R, I( |/ _如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
: J+ m$ n) c* o; |5 Z) |% r8 j2 U4 P+ U( M; m2 \) f
4.群选择器6 k' \$ }# V& R. B0 d# z) T# n( W
" R; F7 p( r' u! O% t( v7 `; {当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
$ v+ B& N5 D& b7 q" V. z! L
% e' L0 F$ q8 a! L/ g p, td, li { font-size : 12px ; }
& ]* u, m; u8 v4 s2 y/ t就是给li下面的子元素strong定义一个斜体不加粗的样式* \) u1 F4 i' v
# ` h" i0 b# i! c5 T6.id选择器9 ?( |$ k; v7 a. A7 O+ ~, Z
$ F7 `8 V2 ~' m! W用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层8 m$ V: X7 ?( a- S
% j" P5 y% n9 b* c/ [; ~# ?+ J4 E" A2 N* f
然后在样式表里这样定义:- e" V Y) h) s9 w9 ^
6 w' w1 @4 b, b4 h/ n1 F
, B7 m7 \4 U5 }; t' P
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
% ^( G# p) z& V0 y其中"menubar"是你自己定义的id名称。注意在前面加"#"号。8 P: t2 N# u- S0 B, e
! X2 a5 h* F3 \
id选择器也同样支持派生,例如:& ~: { F5 w# _$ _& u3 t4 K A4 C
#menubar p { text-align : right; margin-top : 10px; }
/ V3 ?: N4 D* z- g7 E4 D4 c这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
% H; I% O& p/ b4 ?2 U* }, r/ u! v" r* X3 s3 C
6.类别选择器
2 |2 N# x! Y% z6 Y1 K7 R) T+ Q! n$ {* h* d/ R w$ P
在CSS里用一个点开头表示类别选择器定义,例如:
0 k R `7 }' u1 _- N6 {.14px {color : #f60 ;font-size:14px ;} . t$ R' Z& O# j% m( |: C U
" E+ P: j9 N0 n4 f$ `5 V
在页面中,用class="类别名"的方法调用:( D3 j( A: B9 N8 d, ~% ]& d% w
<span class="14px">14px大小的字体</span>
3 V: d b! x X4 b- C) U/ L% K/ O
这个方法比较简单灵活,可以随时根据页面需要新建和删除。7 K0 v2 j$ E3 o5 c
& B# {( S9 E2 n( q5 F" d8 d# R7.定义链接的样式3 I% ^+ P3 B" k0 J8 c7 F3 [% ?8 @
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
- o$ k/ B! Z% h+ b( Da:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
& v1 `/ h4 Y: o) J2 ba:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
) j# i! C+ v# c( j( O" X# t) Ba:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}) m8 T0 ]( {. d1 P9 s! [
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 7 C2 k& F8 y) p. h6 l
) t8 c% |6 {4 @' J$ f7 s- Y
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|