|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。& h) v5 X$ G* h" H/ i/ B5 @* c- |
. J# \/ M9 I1 l: q$ V! j1.基本语法规范
( x$ P5 c. t1 e Z8 I; g, M4 u2 f: c分析一个典型CSS的语句:& v, m1 j9 S! e, Z
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
2 W$ |" y* t: A& z2 Y3 p( v% V其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
6 ?2 d1 B& @( k5 _# b. m样式声明写在一对大括号"{}"中; ' g$ O7 p2 _ m* i
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; # b) ], W4 i2 s# b. E1 B% \6 C
"#FF0000"和"#FFFFFF"是属性的值(value)。! Z* d' t5 M0 ]: O; S% T
/ R7 }+ z6 r1 g9 p( l8 y2.颜色值% M0 q+ Y+ Q4 F8 }
2 f; }* V: O2 [& d" v( i颜色值可以用RGB值写,例如:8 \/ j* H3 O8 j* d) J
( X: S" M5 \/ Y: M8 T; T/ ^1 X. {; D
1 p' r5 P% _- N( b
,也可以用十六进制写,就象上面例子; c+ I! p* d9 c* o L* q4 o
$ {4 D+ R9 y1 `
! k( F" x' R ~2 m
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。5 A+ [6 \7 D4 M! P
8 J: X$ x0 @2 Q5 Y
3.定义字体
" d" O1 \' e7 Y( `web标准推荐如下字体定义方法
( E+ U3 w4 g6 g1 I: \
- L- ], e) B4 `: C& D# B( fbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 6 }3 R5 y* L" n# h9 s) R6 b
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
" P) D; Z$ A7 k- _Lucida Grande字体适合Mac OS X;
* n1 G8 ~$ Q3 B$ h8 ^/ r4 gVerdana字体适合所有的Windows系统; 8 c! h" I2 W3 U
Lucida适合UNIX用户
* i. B5 K( I: z. O"宋体"适合中文简体用户;
! r6 w1 A2 z! C0 Z如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
5 o2 W4 D% y7 Y# z# n+ B/ v8 ^
; [8 M- X6 @4 e- @" I4.群选择器6 ^/ X* F Q% o8 s
: g* @, I' x4 Z) v
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
( @" Y' l4 D8 J8 V
- e' @/ J- `) x# t$ z/ H p, td, li { font-size : 12px ; } % s6 ?) d5 y% I0 w- U
就是给li下面的子元素strong定义一个斜体不加粗的样式0 X. v7 j6 }- w, m( u+ f, w
1 N: B6 I1 k5 [; P
6.id选择器
1 k9 b% ?# {: C
$ B+ A0 V/ [$ Y) \* h, R用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层' V7 a; Y1 z/ d( X
; k. ~8 ~0 l6 m$ Q5 F* b
/ W" l$ u0 w; s8 G# s* s7 h( y然后在样式表里这样定义:
& x6 S9 Q/ P) o, w5 n) a% U4 l7 c/ R# D! o g' f% b& p
6 K1 p* c: `) q3 K1 ~% q" R
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
]1 J+ P# m6 M8 T [" `其中"menubar"是你自己定义的id名称。注意在前面加"#"号。" A0 S; ^8 @# \) N- ?( Z/ t
# c$ ?, k. i: r) L5 I8 gid选择器也同样支持派生,例如:
" u. m( D v7 D- `: V, ^#menubar p { text-align : right; margin-top : 10px; } 2 }3 q0 w5 }- s. k% V% Z
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。3 ~9 _. J. y6 b. ]4 x2 B
' o& {7 B: i! S( e F6.类别选择器! M+ C1 A7 z* L1 E
) N2 Y- C: H3 M( X% m' ^* t; J G4 Q在CSS里用一个点开头表示类别选择器定义,例如:
, c. s# _, B( o9 K.14px {color : #f60 ;font-size:14px ;} 3 R5 L0 O! {1 r) b+ S
9 l0 `$ s# }2 F- r9 b/ p
在页面中,用class="类别名"的方法调用:, O( ?3 _# w: @1 D% X! i
<span class="14px">14px大小的字体</span> ' }; t/ r2 x M* T$ O$ }
/ u) E4 [# K3 n这个方法比较简单灵活,可以随时根据页面需要新建和删除。
- L0 C$ s: o6 B! \! L
0 W4 r/ V5 t3 W8 N- `6 N7.定义链接的样式
; f) R3 E# w9 g& ~CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
* Z: _: k* \- `! Q$ G6 x/ da:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
: e) k/ H. G: H, z1 Ea:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
3 F+ C& a: D5 D6 Qa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}9 U9 n, T0 b: w. W4 @3 ?
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
: z. J5 L4 I7 a5 m5 i; P) P- w/ C( S- n$ s5 E, X
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|