|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。# f% m, S; ?1 D4 w" E' w4 G
: `" m" ^% r+ N1.基本语法规范
& l* \, T/ d" Z! T8 [3 q; S: [分析一个典型CSS的语句:5 m) j& B; n, C+ m# a
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
, g( H' y9 T1 m7 ]2 t; {其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
- X. o* G3 m3 n4 G样式声明写在一对大括号"{}"中; 6 K' w* \. j# d; w/ P
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; % ?+ p; h7 C$ N% F( y Z& J
"#FF0000"和"#FFFFFF"是属性的值(value)。
8 {; @3 K) G/ p3 P' T" W; L& ]- o' O- H. n0 G2 G# T( N& J
2.颜色值( O, n2 r9 A+ G9 s/ t; ^' K0 Z# b
2 w4 _& q( J% @. N/ U' k& L颜色值可以用RGB值写,例如:
0 V3 [4 y# }3 x5 w- v8 [9 s* C* {, b* z1 ] W) e2 ?! z
. D" D P; }5 W" }( V: F,也可以用十六进制写,就象上面例子
6 A- ~* F6 G+ l& R9 q$ m3 k7 ~5 N& W! r8 i2 x
7 I" o& s9 p8 v. ~5 G( x
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。+ ^) @8 e5 \$ b
& j8 W( K% _& F% F. @; h" I3.定义字体/ d( \% Y0 B2 m, y* g) G
web标准推荐如下字体定义方法, a0 r( n) e. v! [5 Y6 V! x1 o+ E
4 W/ e- s# Z+ G- X; B% O
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } ( g, @% |/ x: F7 \% N
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 1 V* T) T' G5 ^3 d7 J
Lucida Grande字体适合Mac OS X;
( S" q9 A7 Z f1 l+ GVerdana字体适合所有的Windows系统; 0 t( U" z2 F4 L% S. N" g. C
Lucida适合UNIX用户
1 H) L0 q4 z, |. k* t"宋体"适合中文简体用户; 0 ]8 c/ }. a0 K! o7 w; G2 }
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;3 h" ]. n( J. ?9 L+ T0 `
( \: _5 K# e* |! S2 c9 Q4.群选择器# h/ x6 Y: e1 A3 l+ m8 Y, P$ s
h5 `/ h3 T, S4 q9 r
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
6 p3 I( c. s) B& c D |; H/ M, r% W, B5 R
p, td, li { font-size : 12px ; }
0 w* ?( ?. I4 H. j7 Q/ p$ ?就是给li下面的子元素strong定义一个斜体不加粗的样式
* P6 @6 S5 f# B
7 C5 Q3 f9 E$ E6 K7 I; }) i( M p6.id选择器7 v( H* X/ ~/ g' p$ [+ u A
: M/ k3 `$ H/ {
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层+ M1 |$ W% m* o
9 R% Z* R3 P% l' P9 V6 d
?5 _7 P( P+ R$ H然后在样式表里这样定义:
1 \+ e2 |5 t3 M P# R4 W( }* n* |) d
0 f: _# k0 W y& U% y#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 6 i2 y1 A* u$ F2 t/ ?2 R( C; I& z1 F* ?
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
8 [( k3 t' Z/ Y) G9 d7 N% G6 _: z% g+ ?: }& n1 k/ y h3 C7 f
id选择器也同样支持派生,例如:
) f; W. J2 s7 X U% k4 z5 l6 O5 e4 \#menubar p { text-align : right; margin-top : 10px; }
/ F6 C% r) }* L. B这个方法主要用来定义层和那些比较复杂,有多个派生的元素。+ X7 E+ Y" P3 d
5 z( p0 [- r& u0 f& [" Q, Y. |! Q5 d6.类别选择器* D8 ^% D% E k8 W
8 t; V4 d1 r6 d( `' ~1 e* e
在CSS里用一个点开头表示类别选择器定义,例如:6 b4 r5 H. x3 {! k) J" H: m
.14px {color : #f60 ;font-size:14px ;} 3 M, R: M/ t# [" e( P
. S, u p% M9 B8 A1 n: g$ L在页面中,用class="类别名"的方法调用:
4 n8 u* z6 ~1 G. b7 [+ z<span class="14px">14px大小的字体</span>
; H( Q6 E, ~# \( b; Y
& p! t6 x" R' I/ R6 w这个方法比较简单灵活,可以随时根据页面需要新建和删除。
2 a+ P9 b/ }9 f7 v7 D9 U* h" l+ j( Q- G* k9 I: Y
7.定义链接的样式2 |1 c \0 g' A1 M
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
3 t) W, W) P# g& |a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
" @0 b0 O0 H3 b" L: za:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;} c5 P1 O+ S _2 `% z1 Q! ~2 p
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}& Z9 _9 [7 a8 n' U- Z3 Y4 K
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
5 Z- u1 @0 N& X% f) D6 ?
: t' `/ Y, B0 ? J5 V2 T以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|