|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。2 ]% q! j' m: l6 {6 H
7 F# _5 X8 z# [: ^ W0 b1.基本语法规范
: D! P+ j# P8 c( {( E, ]+ ~3 Z3 t分析一个典型CSS的语句:/ }5 Z3 T% o8 l$ W: X
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} 9 H7 T+ T% Q# h' ~* h6 }1 r e% l! j
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; - f( Y/ W- }: L) ?$ t* [( V
样式声明写在一对大括号"{}"中; : P( |, s3 ~4 Z
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 4 j! M) |6 K( y2 c7 |& \ b
"#FF0000"和"#FFFFFF"是属性的值(value)。$ ?8 A; L* e4 x" j+ y. P
( M: M- z3 d g: ^- G- { P
2.颜色值1 [( n4 ?8 M2 m) U
* A- b$ J0 P4 W3 _3 t4 Z颜色值可以用RGB值写,例如:
1 i' ?# P- c: ^# V3 ]6 r
0 @2 u" ?- ?6 b8 T& J
" \ h7 R7 U/ c* }4 ^8 H! t,也可以用十六进制写,就象上面例子2 N- B$ N& @5 M) a: i; z
6 I. d2 d+ V. j; ?1 b/ J
4 h& Q3 G( _8 @6 H6 @
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
) S8 y; A% A( {6 `* ~6 S x# p: \; o% o, I, k1 |
3.定义字体3 U7 g- b# o4 |
web标准推荐如下字体定义方法+ t+ n4 {- U) T
$ P4 ^/ b% A v" |
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
+ i+ P, {% u8 _0 u1 T' X字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
& q+ q$ V& {* m; }) HLucida Grande字体适合Mac OS X;
4 y5 P7 n' s% V# P9 PVerdana字体适合所有的Windows系统;
5 Q" O+ m1 L$ X5 W3 ELucida适合UNIX用户 % t. |1 }4 Q. Z6 G* P5 P9 L
"宋体"适合中文简体用户;
3 \0 h+ r7 i! }$ `0 d. J如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;* X& a- Q( E1 L9 r$ b
( ^% L) N/ ^( t ~2 N9 T4 U4 d& r
4.群选择器$ v' w* d, ^" m$ G$ g, }
0 _9 O/ U: i" z6 t当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
+ R+ }; C4 x" K; C8 R1 p0 w7 [# F2 K1 k4 z8 x' b8 i1 `5 U
p, td, li { font-size : 12px ; } ' G( I2 C; w4 q0 A# g0 H& l
就是给li下面的子元素strong定义一个斜体不加粗的样式
# B" X; v# G( l: k: ~2 z4 Q0 a) _" r' d1 i, F7 T0 l* J
6.id选择器' X; F/ X* v+ n/ g' {: D
2 c& e) ]9 p) ?8 Q3 n
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
) k* K5 o( y8 J1 _2 G
0 Y4 x3 C- x/ d9 I3 T# z% O+ ~" v/ a" @4 @1 x6 l; f
然后在样式表里这样定义:: K# r7 p6 M P4 ^& H/ I3 ]
, K! W" D( e/ Y. N" s# [
* s$ R+ y( T. T; ?#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
7 f' b5 J4 C6 Q( @# Z: O6 x其中"menubar"是你自己定义的id名称。注意在前面加"#"号。: N0 j, V, u; j& P6 M: x9 v) o/ O, h
9 s: f! Z: Z$ [3 N/ u1 o1 w8 tid选择器也同样支持派生,例如:
3 {% L: W" H9 m" T: ?! M5 [#menubar p { text-align : right; margin-top : 10px; }
% R) W, b3 I' O. j6 H- n这个方法主要用来定义层和那些比较复杂,有多个派生的元素。$ y# v$ O" W0 Z3 f
' v* y" F/ ^' f0 W0 r6 }6.类别选择器4 X% a% S7 S5 F6 g( ~' p
. ~6 \5 P1 q* M. j# R- d在CSS里用一个点开头表示类别选择器定义,例如:% T. v% O l9 u9 n& Z0 \: g" t
.14px {color : #f60 ;font-size:14px ;} : |" e. u) B c. c
; Z3 }9 v" s% `2 R' {在页面中,用class="类别名"的方法调用: K* u6 }2 [( z2 ?9 k; G$ V
<span class="14px">14px大小的字体</span> ; k& Z. _& ]% {" ^
4 E1 I8 E7 h5 ^2 O5 w! B& s8 S
这个方法比较简单灵活,可以随时根据页面需要新建和删除。8 J" W ^3 b7 U$ M$ r8 R$ M
/ A3 J# V9 N+ A. Q i7.定义链接的样式* m" F d$ S+ L* b ?
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:1 O9 b1 l/ B p( ?
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}8 e! G/ R4 s/ {
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
6 w; z8 s1 O$ @$ j* a7 V; Fa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
. J# n4 _; L- I5 ua:active {font-weight : bold ;text-decoration : none ;color : #90 ;} & K8 g& }5 [2 d9 u$ A( N! g1 E, r, W
8 J$ w& J) i, J2 c0 K- p8 o- f7 u
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|