|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
- z1 ]% a% g6 s' H) U4 s
: h7 H3 @ `8 x" j1.基本语法规范
& {- w( z/ n, y0 O- [分析一个典型CSS的语句:
/ p9 j2 n7 u+ }p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
8 M" ?$ l6 r0 P其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; / e' g1 w' G: R B$ w# o: t
样式声明写在一对大括号"{}"中;
) Z# s, s1 J1 }3 a2 ~( [( U3 `COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ' L* B! L" r+ b. L
"#FF0000"和"#FFFFFF"是属性的值(value)。
. B( `6 t2 ~: `3 b/ l
- o. |7 M( E4 D( [+ [0 c# u' s2 V2.颜色值
. Z# ~& `2 v7 a$ Y
7 y: a9 {! a# J$ A颜色值可以用RGB值写,例如:
4 Q; p/ x+ ]3 i: {" U
) Z1 o& m8 N! Q* [7 C8 c6 T# c# K9 y2 R: y' z" v
,也可以用十六进制写,就象上面例子
& u0 g' S6 |5 E8 M* w3 ^6 r5 S9 |& Z. |5 \, E
1 X1 ` d* m1 V2 I! V" h3 s如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
3 z/ u3 j8 f& t3 e) _
9 n; A: L. D& L' Z( ?8 A$ }3.定义字体
% b7 U+ V9 v0 h \/ |web标准推荐如下字体定义方法: K% L. g" [" `* q+ B( k" e
1 [ Q8 Q: F$ v: Y% |7 J
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } " |0 d3 M8 H! `6 e' V
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
0 E! z% l6 b0 e- s% dLucida Grande字体适合Mac OS X;
2 Q4 Y) R I9 eVerdana字体适合所有的Windows系统;
6 ^/ `- W* W: P! B6 a/ M8 L6 WLucida适合UNIX用户 ; X: G9 O# E6 Z# E5 }% R
"宋体"适合中文简体用户; " C, A4 Z8 [) I0 K% b4 ?
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;6 j9 b; b9 s2 e% _0 Y+ z
) m8 T$ C+ r6 h. ^* t Y4.群选择器
; a4 Q2 ?; o O3 A1 F* ~7 \, y/ K% G' P5 j9 z i+ J# g7 v7 {
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
0 @7 y \9 j; t4 K F* c/ Z8 x, B
p, td, li { font-size : 12px ; }
) i7 y4 X" l5 @! Z7 ^3 O就是给li下面的子元素strong定义一个斜体不加粗的样式
1 F5 j* K7 @0 H. O1 O- `* L+ _4 Y; G7 ]) c% S
6.id选择器
2 ]2 E3 j A0 n C
# j& @+ L, w& a7 W0 O/ ?" b- A, v用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层, u9 \1 y3 R: `
# |# n7 H; ~6 q% X: _' |) B2 H( z2 p$ x, R+ k/ J! |. b
然后在样式表里这样定义:
4 n$ |* w( g6 u. D9 g4 f( b$ o1 c* J% Q' d) a& E! [- J
( ?) Z* `8 A8 c#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ) q* _0 ^4 `5 @2 O. R
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
j$ H3 i) I& x6 W- U$ P3 k8 h* D6 a0 @+ I
id选择器也同样支持派生,例如:: b4 w, |, |& Y! `3 [
#menubar p { text-align : right; margin-top : 10px; }
% g& h1 W9 a6 S: f: C9 W这个方法主要用来定义层和那些比较复杂,有多个派生的元素。# \7 Z& \ A! O1 {
9 N6 `. n ~; @' k" f6.类别选择器4 | P! L' v7 p% E- y5 s
5 K g, I* ]; Z+ r3 F q% ^# O$ O
在CSS里用一个点开头表示类别选择器定义,例如:. q& s {) T# _: Z' \& L' k# {
.14px {color : #f60 ;font-size:14px ;} " D( m7 J/ r- }! A
4 K- i* v( {1 F: v
在页面中,用class="类别名"的方法调用:* [% U3 S( i8 O- x( ?% \ P$ X
<span class="14px">14px大小的字体</span> 0 e4 y: A% E- T; n# m' s
/ o& A- n0 Q/ {. s' ?& N4 o
这个方法比较简单灵活,可以随时根据页面需要新建和删除。9 T1 Q& b W' n0 ]6 A* L8 l5 `
( k" W* F5 ^5 ^1 ]4 q
7.定义链接的样式% B9 o! N' l- n M; d
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:! k5 Z4 U# }: t3 Z
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
( T4 x, q( v" O1 sa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}3 J+ Y+ G5 S4 v8 \6 b
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
; i% N. C. b; Y8 V1 W7 e2 E4 ua:active {font-weight : bold ;text-decoration : none ;color : #90 ;} $ f; C5 [: |. X$ P9 w
/ Y) J# T7 o3 o& J) A7 |
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|