|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
# V, Y s0 H, J5 Y' k+ Q
5 o3 U0 k- D- j8 j: m1.基本语法规范
+ V* y0 V6 C& ~2 |# {+ k分析一个典型CSS的语句:
. H8 {; n' M8 \2 ]. R6 e6 ~: _9 cp {COLOR:#FF0000;BACKGROUND:#FFFFFF} * A L+ A4 H1 F! D
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ; s( S. E7 y* k+ t L
样式声明写在一对大括号"{}"中;
H( E8 ~& z& Q* h; w, tCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
# D8 ~% ]* A5 @8 `# g/ I8 E"#FF0000"和"#FFFFFF"是属性的值(value)。% U) b/ p! y+ P. Y1 ^3 G( t9 |5 E
6 m6 I6 F x" \$ m, N+ n, c7 ?2.颜色值1 N( v+ |: y) |+ m& w5 ~' t3 K7 c* y# w
2 ^9 ]3 s u8 f( S1 w# W
颜色值可以用RGB值写,例如:
/ M8 F' \7 M0 j0 B5 {9 R3 ^: h/ P" }1 b: E
# D, i) j+ v2 u; \,也可以用十六进制写,就象上面例子3 p& W3 I4 }( F2 \: M7 ~5 q
2 ^+ K4 O: {/ |; v% q: b/ W
* Q6 {( F: ~4 [如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。# ^6 E6 C: o8 l
% o! ^8 ^8 ^ `: |3.定义字体; }- v5 ]0 [7 J6 W. N/ s. p! f# H
web标准推荐如下字体定义方法
0 C2 _. Y5 E" P: f( z* {; Z# Z o' O( c2 _ N" |
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } : F. A- A- e, X% z# ~
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 5 N! P- R! d- V- p; ~8 a0 t2 y2 K, l
Lucida Grande字体适合Mac OS X;
' w. r5 w- ]5 b) z! T$ }Verdana字体适合所有的Windows系统; - k% |3 t p5 {/ ]* F2 y! s9 N
Lucida适合UNIX用户
_8 X9 ^8 E9 I6 |5 A"宋体"适合中文简体用户;
! L, P$ S$ G( t如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;7 i/ g7 K4 u5 k% ]
' s' p6 Y, `$ N" z( s/ @4.群选择器5 L) ~) I& l8 c! q3 q
9 Y- b7 X5 E* k9 [) K! S. F- u当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:% C, f# {4 n) v9 C$ T
; F* x- ^2 h2 k' H) `8 E p+ k+ U p, td, li { font-size : 12px ; } 7 t. a" F4 ?" y
就是给li下面的子元素strong定义一个斜体不加粗的样式
( p3 l/ M& H6 Q: d9 T" ]* ~
" [8 u- V; R, F6.id选择器
" w3 }4 p' W" @2 r9 v
' p, p1 y8 P% x+ x3 _+ f. F" J用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层 p7 [0 v9 n# Q: t; y. G: o
! u$ T9 z% I5 M2 J4 J- I( o* t1 } w6 H) ~, I( F
然后在样式表里这样定义:& e" O) w( X& q- T) O# Z
! Y9 W- k0 o6 k8 a: v9 a0 h- s* U" x0 P- j+ c$ {3 @
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 6 [! Z, T' g. Q% B
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。; N. S: ~% m. h( I: Q
% W6 A* O7 b. b( F9 o4 c& d; F
id选择器也同样支持派生,例如:" M( M; w, @8 A6 c
#menubar p { text-align : right; margin-top : 10px; }
% i. k' F% N3 T6 D这个方法主要用来定义层和那些比较复杂,有多个派生的元素。/ @' X6 S$ \ F- z4 P! U+ v
$ m% |+ c- l. r4 N' t! G3 L; |6.类别选择器; X6 V6 ^; i* `: e
/ }: a$ u- `* k5 O
在CSS里用一个点开头表示类别选择器定义,例如:
: b2 E/ r" \1 z7 R6 D4 o6 V1 F.14px {color : #f60 ;font-size:14px ;}
! A0 j+ N) o# P& p: D. t$ l" v6 E7 k; U' l- p1 v C
在页面中,用class="类别名"的方法调用:
4 B0 s& j$ O- e/ T, N" s" o<span class="14px">14px大小的字体</span> 2 P" h; `" T$ s) O2 }
. m7 K7 l" S/ \2 X! ~这个方法比较简单灵活,可以随时根据页面需要新建和删除。
6 w! s) @4 i; ]! K U9 ?( l: w
7.定义链接的样式
; V' Q: L: K! U! C8 ECSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:- I9 L2 n( U2 H& Y, y. Y6 h
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}! v: s. d- T7 t: X0 k3 S) U- e
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
* `# e2 R+ x0 F: ga:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
0 U7 v2 p2 R6 R2 I3 N7 h. I9 Pa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
/ t0 L, v) F4 W/ ]7 c
1 N& ^+ `/ O! X3 f5 o以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|