|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。* w1 j+ B1 D9 r, X( D/ ^
+ C2 i( |+ Z! H1.基本语法规范
' s0 S$ z# s5 w3 n9 {* v+ N' s+ X分析一个典型CSS的语句:3 d; x; P" M! X i% k2 D5 ~4 Y: v" S
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} & T; Q( l, A: c, G( e) t) v
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; " e* b( e) E2 ^7 g- i M% U
样式声明写在一对大括号"{}"中;
) [. _% G0 ?) L/ I3 i. b2 Z) ]COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
! f& p8 \5 f! J* }) T% F0 \"#FF0000"和"#FFFFFF"是属性的值(value)。
# ?1 Q7 e& z! s0 N T- K! Y! w6 M9 }0 d2 f) A
2.颜色值
. _- b6 ]2 Z8 T/ q5 y) X8 T
' C! ?: x+ ?! V' Y" B2 Z颜色值可以用RGB值写,例如:
" _: c4 e! N8 B3 I- Z8 k6 ^' Y6 ?. s) h. l, F, T0 V( _' g
6 W0 E' X5 h+ _& y u% C7 B# u,也可以用十六进制写,就象上面例子
4 o/ V( t( `2 q; d' L# Z3 p1 U4 {7 g8 v9 o
9 E" u) U% [. Q i% l+ P
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
3 \1 {4 Z3 q. c. Y$ ]( I6 E( ^
( l+ a+ `* k) }' y* E4 `. b$ t3.定义字体
0 t% B) ?- d/ U2 L3 l: Vweb标准推荐如下字体定义方法; g8 a0 S/ f- C& ~; v4 L; N1 Y3 J
: u9 ]3 ?( V0 q
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } . E( ^! C ]4 g7 E: k
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; / h3 t; F5 ~. S2 O2 F
Lucida Grande字体适合Mac OS X; 6 X5 l7 ^0 F2 H9 L4 G* k) k
Verdana字体适合所有的Windows系统; ( h' R- H! B1 M p9 K
Lucida适合UNIX用户
( w% o1 @5 @$ @1 J" U6 r% J& B. f"宋体"适合中文简体用户;
% G; }( [) t8 h8 b9 S8 K如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
: j9 w9 w- l% m0 i$ v7 S3 l O* M( z5 O% }. R
4.群选择器9 o, d/ z: g. j/ y! n
5 B- W3 J, h$ l+ t7 e
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
9 X" t" y/ E& B+ M' @. K* W6 R& q ^
p, td, li { font-size : 12px ; }
0 ?$ y! N" @% j/ P9 M& L: K就是给li下面的子元素strong定义一个斜体不加粗的样式
- u: M5 d% O/ \$ Z$ y2 ?4 K: }/ g4 m& K6 |: ]& U8 o
6.id选择器
4 }; ~2 ?4 u, Y- u) j5 c) d
/ o& m% T' a$ h' u. ^ B- G0 Y- c% R用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层* Q/ j X1 e+ a% P) {. e: a
! L- D1 K$ o" C: B8 u# E
0 e- J8 S5 t: W% E然后在样式表里这样定义:
5 r Z* I. {. ?" q0 Y0 w9 Y0 e. s
: v1 L8 u/ r0 ]: b#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} - c, ]) R0 Z* y2 Y# P: w- R
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
2 Z9 |- q+ ~+ |# N' P2 T3 A6 g* G6 F d5 @' n1 K
id选择器也同样支持派生,例如:
& z4 m) G: i4 l' E; T: ?- l1 `/ T#menubar p { text-align : right; margin-top : 10px; } 0 i. `, O; d! R3 J
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。: u* E/ J* ?) M$ f+ Z* Q- Y' @0 l; h
1 O. L- b* N. p* l0 d% u* G& \2 i3 M6.类别选择器- r) c! u9 g+ P
. K! k7 S7 d7 U0 B8 i5 r1 Q: y' {在CSS里用一个点开头表示类别选择器定义,例如:- }7 ~( z/ E1 }1 a" _9 }& S
.14px {color : #f60 ;font-size:14px ;} ) b( _/ M5 K. K" p* o
K2 ~# r: g1 q# ^
在页面中,用class="类别名"的方法调用:
' ]# Y+ R% ?: r7 D4 D<span class="14px">14px大小的字体</span> 9 O0 }! J% o4 }8 \& C
# V: g, U3 J, W: W
这个方法比较简单灵活,可以随时根据页面需要新建和删除。 T2 n. h5 z+ K
* E& `8 F2 I/ B# q' Q, H
7.定义链接的样式
( |+ b$ \4 t+ B; ~2 cCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:: a* w$ l# S8 G& u1 v
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}6 b$ ^2 W1 {- a8 x- r
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}0 n: ^ m3 t4 T' O3 ^: y
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
7 a$ y9 j- w+ `& Y1 fa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
: h( h( Q' a1 ?* n- q9 d" i
) o- n9 y8 d/ m" T$ c以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|