|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。0 X" r; c, |& ~! M
% s- R/ F; [* |* S( ^4 k1.基本语法规范3 K$ U) }' |5 t( W$ v5 E/ O
分析一个典型CSS的语句:
7 N. D- m5 v$ |) A ?0 kp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
! {/ z) h/ l, n, T5 B/ H7 n+ V其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
: q! S( Q) @4 R$ [3 }" B样式声明写在一对大括号"{}"中; 9 y9 K0 f; q) y4 ^; t% R" k: D: v
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 6 _2 q6 x1 H4 |& S. L6 z; E
"#FF0000"和"#FFFFFF"是属性的值(value)。+ n( S i- F# U5 w9 \2 C
/ I4 p( w$ e1 \2.颜色值
5 T$ |- d& E$ Z; u: \4 s x# c' e4 R2 H7 v% ^- i4 M9 _7 P6 v
颜色值可以用RGB值写,例如:6 ?0 v" E# ? w# y' F
8 X2 X6 T- g- `9 Y+ H
! v. F% z! P& V' g' s,也可以用十六进制写,就象上面例子! [# G \) L* H4 F; Q
5 _ C; H+ E9 m# n/ @9 T7 Y2 f' s1 f& O0 ^
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
% q0 E* f/ o( {2 ]* e0 I, H1 k+ A: I% t% `! e' f' H
3.定义字体, z8 K1 A& x$ ]
web标准推荐如下字体定义方法# X5 A. z* O k; M. p6 e6 y
; m. p9 z& u: E( n
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 4 ^, d0 d5 d. q! K
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 5 [, s, I$ d- P3 ~! T
Lucida Grande字体适合Mac OS X; 4 L3 N9 ?$ T- ~8 J# W5 v0 Y" @
Verdana字体适合所有的Windows系统; 8 J4 W2 F+ f" G u# u/ z3 X
Lucida适合UNIX用户
" p! m3 ]/ G+ }"宋体"适合中文简体用户; 4 r# o, o& t, c0 X" I" y) U; I$ q
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;$ F3 G8 e8 i; h' j5 Q6 I: m
! m. a& O8 p4 G
4.群选择器8 m" ^' W/ P2 [. J
3 I& u d0 L8 B5 m, Y0 c当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:( `, Z0 M& a2 o9 L& s; n w
6 D9 S- J, [0 v( i. O/ K& v2 Q p, td, li { font-size : 12px ; } " P6 q9 F( w7 B& ]
就是给li下面的子元素strong定义一个斜体不加粗的样式
7 }/ G1 d- f6 C
1 e8 Y, ]4 r8 A: f4 z3 V6.id选择器
. x. ?) n4 U5 V$ u! D+ K3 C% Q+ Y. V9 J# w' C% i8 d
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层* X5 ?% v6 Q: i* ~
" s' z, P$ u: v7 ? }' H
5 F3 e. d }3 l6 W6 G! _/ q
然后在样式表里这样定义:
- J. V1 ^' r# T! Q, o" f
' F$ `$ v0 Z5 f. M$ d' y3 E5 O3 e" c9 i# c' r/ D
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
8 W: Z1 Q+ u( n; \3 h6 I( G其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
$ C0 N3 s" ^& p$ @" O7 \9 k! [" q
id选择器也同样支持派生,例如:
. q$ ^$ V$ [% ?% Y#menubar p { text-align : right; margin-top : 10px; } 3 Y& F2 t. x% G! d
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。4 M5 a2 z' F' k" a
; J- S1 _5 f9 _( }7 n8 V
6.类别选择器) H5 \5 T% e$ ]6 l9 R+ j+ [
6 p L& ]7 t, e7 p4 L; I3 d( E
在CSS里用一个点开头表示类别选择器定义,例如:
% \& t& J9 ?( _.14px {color : #f60 ;font-size:14px ;} 7 V% P& \/ B# v5 K5 E- w# {. O
5 C6 U! C' z" L% o
在页面中,用class="类别名"的方法调用:
% A9 Z# [: a* i! a<span class="14px">14px大小的字体</span> 3 x" \; w/ @5 J
5 ?7 t. o0 t/ x9 N* W/ g5 r I这个方法比较简单灵活,可以随时根据页面需要新建和删除。/ ?/ L8 g. C* O; O9 _9 h% j
, i) D0 I3 [6 I( v& S3 M7.定义链接的样式
& V( I- U. H- v3 p9 j, v3 ?CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
" l# J! u3 ~6 B% K& X% z& ]2 Da:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
2 U* t8 E/ b+ d" qa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
/ u1 `+ m# e4 {0 a1 Y) ?7 w5 Ea:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}' g4 i3 |# X4 ~( c1 |* e
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 7 {$ c2 z0 Q0 h: o0 L
+ Y* R+ x7 I/ a& d% h以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|