|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。3 [8 @% h! P3 I$ j% I" T
5 {! n; P) v U2 t8 [
1.基本语法规范4 e# \$ |, ] `! p/ ]8 u
分析一个典型CSS的语句:
% B: U- u2 W c0 Q) r$ }/ ip {COLOR:#FF0000;BACKGROUND:#FFFFFF}
- @, Q' ?7 ~+ ~其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 4 e6 n0 B5 h6 `0 e) ]
样式声明写在一对大括号"{}"中; & G2 V4 g& i* G7 J" v
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; Z6 ]9 f, y; o o5 P( a3 k# E: D6 O
"#FF0000"和"#FFFFFF"是属性的值(value)。
1 Z. ~7 l) c' l) |
* E* h4 A1 d8 E) M2.颜色值
" D3 M: {% Q7 H6 W
A1 G: w- r6 p& I0 J. ]' U7 d$ |: ]颜色值可以用RGB值写,例如:
- Y. _' m; h$ u' q8 l3 y/ q: R; ?2 a6 M$ m0 S6 N
a6 Y$ I2 c4 w: d+ G) a
,也可以用十六进制写,就象上面例子
& Q- L S# M3 H1 A- {5 `3 l+ @ `
7 U8 n( V7 ^5 v$ O- k1 c
& x* E' B, B7 m" S如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。& }* _! a# _2 H9 Q F& ]
8 }3 k$ X8 T, R+ F
3.定义字体' g" P" k9 F% n: L4 ? J
web标准推荐如下字体定义方法
, ]. x8 w( ~( P; k/ [0 o* l0 N- \9 E5 u' H/ k6 Y L; G
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
9 c% K9 x7 U# U6 `* N字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
( m' x* P) J$ ELucida Grande字体适合Mac OS X;
; H( Q3 y; e9 y9 m; }Verdana字体适合所有的Windows系统;
. ?$ W; ~& t9 ~) Y# W& |Lucida适合UNIX用户
0 \/ N' ^$ o, M; z2 |" j7 T"宋体"适合中文简体用户;
$ I9 J/ u; H- M$ I如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
2 [; f8 y- a8 N" t+ r) o M, P8 u
* B% B& H* T2 g/ {+ _* G4.群选择器
8 @3 T, P2 c. Y/ s2 D
4 T6 b# O7 J* Q9 J: x9 J当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
: l! ?3 F( d! _5 b. F
' g8 ~, Q* {" Q4 }) I3 R7 Y# l p, td, li { font-size : 12px ; } . I$ y3 n7 q3 w/ R# o3 X
就是给li下面的子元素strong定义一个斜体不加粗的样式$ [0 m" J$ B, L' Q" a
) A5 [: w9 V/ k0 E& N7 U1 c6.id选择器) f! ?. G- A5 Q8 {
: ?1 m: t& q+ }
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
; G `/ L c4 u) \# Q' W5 Y( S) u- j5 Y L! V P1 B
5 B& y I9 j# x$ d. M
然后在样式表里这样定义:0 h b& O& l0 d1 n. p4 N
f) H; _: f9 ^5 f& |
/ _% R3 n3 p& `
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
; }: b( F, A5 r4 O其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
, [4 z* H. P& d( u7 p' e
' w, e* _! y- l# } G2 W" K) Did选择器也同样支持派生,例如:
4 z+ V5 T1 M& q- a$ N: N#menubar p { text-align : right; margin-top : 10px; } 7 q- p' w4 v! \" D2 X1 q: K: O
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
c D% l1 _0 B# u- \ f9 Y" q: q1 F. f8 c! o5 H, r. }; {4 O
6.类别选择器
1 ]3 d2 }* g. ]' ^! X# N3 H6 }. Z' j6 R: ?
在CSS里用一个点开头表示类别选择器定义,例如:
" N& o7 Z$ j1 E: e.14px {color : #f60 ;font-size:14px ;}
' L3 i5 g% C5 X2 O
9 x& m- g$ L p在页面中,用class="类别名"的方法调用:
* ?; j! R6 S0 N6 P, O2 [$ m) Y' R4 U( Q<span class="14px">14px大小的字体</span> 6 _$ I9 t J6 `" y3 W* S: A1 c9 v
9 \1 D& K( I8 M: i这个方法比较简单灵活,可以随时根据页面需要新建和删除。" r; G+ T5 P/ b% Q! y
8 Q5 G/ g( `& b+ x7 i- M' R
7.定义链接的样式
& b A1 r: B1 NCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
: M4 I# {% I, @, |, D1 g; ~a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}1 g# w& W. H% i% e
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
% ~ W/ |# r! s4 G- f7 J) {a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}$ @9 \, x+ b, v5 {/ \6 r9 i7 c( ~
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 1 V8 c: b# C, t1 N! P/ X' }* \7 L
" t- X5 I8 X$ F: t+ d; k& E
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|