|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
' W* e& {2 V/ S% F+ o1 z! U8 r+ Q4 ^
1.基本语法规范
1 p3 v3 h6 a, Q5 Y9 b+ V分析一个典型CSS的语句:: c" h1 l5 } Y+ c9 S0 ^+ U* S0 Y) B* S
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} % G4 y* q7 l5 N* i
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
9 H) j9 o! q" t样式声明写在一对大括号"{}"中;
& G6 i& r" r) t: z0 R/ ]COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
, T- g" U) i+ @9 Z8 C"#FF0000"和"#FFFFFF"是属性的值(value)。% w4 y4 o2 k& Y- Q2 H" T
5 X( [. N; Y, i: p
2.颜色值
; e; |7 j! ?& |3 S2 j' e {1 A" I% r" T- F& i
颜色值可以用RGB值写,例如:
' g, i; o' a% m. b* Z2 X; O
* E' v2 _, |: Y' }5 S- z% b6 U" G7 T3 t' C1 z; N9 E/ f
,也可以用十六进制写,就象上面例子$ E( c2 x+ }: _ R" w
1 O0 L1 @6 j0 ]7 J: P3 G8 o" U& ~2 Z: M" I1 W& `+ w) q1 `
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
( t; i; H* D" ], x2 w% H7 i; E
6 g! o; Q9 L" A/ X8 }3.定义字体
4 Z0 F S6 L; s; S/ {5 Gweb标准推荐如下字体定义方法: l& T, I" x6 B9 \
h, P! b% x! `; e1 C3 @6 s
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
& L% Z2 v- k, k+ j9 d! ]& s5 i字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
1 o' O ^0 G* |; N+ R; z2 i; ULucida Grande字体适合Mac OS X; 5 @! x. w% `1 O4 m& y- I: G( H( k
Verdana字体适合所有的Windows系统;
/ O, @/ X1 A0 _Lucida适合UNIX用户 1 P4 g5 ]8 F' T+ F: r7 ^- i
"宋体"适合中文简体用户;
. b3 g2 R( w7 X2 k如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;+ v7 P+ u7 g% z' k
' \/ d6 J+ R8 G9 ^& }* E# ?" K
4.群选择器
" S+ Q: i# i( n) Q* a( _1 Q2 b- |3 ]0 o; s |' g4 m/ B# H
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
5 W' k4 r: H, y; h0 u
' Z" z* H- Q5 Z( ?9 U) T8 y3 w( q p, td, li { font-size : 12px ; } " O; H W! [3 L: n
就是给li下面的子元素strong定义一个斜体不加粗的样式% W6 ~3 o8 F* u) t* Q( c
+ H* G3 }. ~4 L* x6.id选择器. a; J' v" {# X* L
B7 Y4 H# P/ v8 A6 P' R; ]用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
4 v1 T7 S0 g/ R( M2 x }) d5 i& I: \2 w' l& g0 E) B- q* a, M" Q7 E+ J
+ U# d3 I$ O8 [1 V/ t2 X
然后在样式表里这样定义:" A' l- L- l8 `( F* H6 ?
; H6 \$ g) o) u, [& S$ u4 ]/ u5 r$ b5 P& H% u
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 4 v9 Z9 r! b/ ?$ b5 ?
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。0 b* s0 k" _, G0 Q, E- {, G- L
& k: z8 w% P9 y, `& [id选择器也同样支持派生,例如:0 F+ d5 m$ l9 s9 w6 p3 O) f5 C8 Y; B
#menubar p { text-align : right; margin-top : 10px; } . V: r2 I% a V" q
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。4 H- Y# a$ |0 r( ]% m8 @% t6 n" v
; T2 N4 v$ Z$ g* k8 W; W7 c* J6.类别选择器. A1 ?5 `* [" U* w2 p9 _' a# O
& Q' S$ Z( G! M$ y在CSS里用一个点开头表示类别选择器定义,例如:
1 }& O5 a! N3 X4 F.14px {color : #f60 ;font-size:14px ;}
+ Q3 ]# C% j- b9 H9 I
1 v1 i6 @- J2 ~7 A! N在页面中,用class="类别名"的方法调用:
; Z! k1 z7 h/ A5 }$ C<span class="14px">14px大小的字体</span>
& Y8 V- f5 J: [& [- s/ k% K/ ]' v* U9 y
* F3 z l/ Q. Y* _" R' t' Y& Y( a这个方法比较简单灵活,可以随时根据页面需要新建和删除。
, D; @% R# s( m5 A
9 ^! F) i. c# r& J- E7.定义链接的样式
; C/ [/ b5 |# W- XCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
$ Y; c" Z1 V% T7 Q" Y7 aa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
6 i# ?( V5 ?8 r+ Xa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}! r1 u/ ^ t( k! ?* I) X* l& p
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}9 Q& a" r7 O$ `, y* z" e
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} + i4 e$ r3 ?% F
, |; u5 N& N- j9 l% c& t7 r6 q
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|