|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
5 f4 M. S& p6 }3 E$ k% A* m
' M h' V1 \2 t9 m0 Q8 p6 c1.基本语法规范
% e, R1 u5 ?$ k+ b) L) q7 i0 ?分析一个典型CSS的语句:
: Y3 m) ?6 I) e6 g: l, Lp {COLOR:#FF0000;BACKGROUND:#FFFFFF} ( R9 h2 ?% }9 A8 O( _# U6 o6 l
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 3 R, \5 c9 k$ h+ k6 ]6 Z* x$ m* c
样式声明写在一对大括号"{}"中;
$ C% T3 p4 j. a8 s: |COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; $ h; a2 H( G( D) N5 H9 I+ k- d5 e
"#FF0000"和"#FFFFFF"是属性的值(value)。
- o/ E2 y7 E2 S" d6 s+ `
; M; a6 D+ t; r6 x( E2.颜色值1 w+ N! V9 Q$ c2 F6 V% E
- h0 F+ i9 M @ b1 m: U0 U7 J
颜色值可以用RGB值写,例如:
! ^; g* y& H1 B% G" P: H t" P8 Z: d! x1 }4 H: F1 M. `! s
1 x. t, q+ d4 b
,也可以用十六进制写,就象上面例子; N9 K9 F2 X8 t9 s' ^
% ^1 z8 C: J A) P
4 I% u" P/ w% v; u如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。; ?4 X2 X) m l+ m
3 G+ w1 a, H4 Z6 P5 ?- m, l. x3.定义字体
; P5 ^& Q8 [, h, Y1 eweb标准推荐如下字体定义方法& f; o8 Z5 U# O& X9 K
+ E- ~! d2 I4 L* p7 [; v, e$ h1 \
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } * t* o8 V/ ^* B" `5 v1 G Q/ |
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
; M. Q/ {1 N( r$ I3 \2 O$ u' gLucida Grande字体适合Mac OS X;
p: r0 t7 b, m; M. T0 [Verdana字体适合所有的Windows系统;
" t5 \- ]! W0 }) H6 o M% OLucida适合UNIX用户
' I# E. v X d: R"宋体"适合中文简体用户;
/ r% i9 I6 X' U8 X4 ?如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;; a: n2 H0 N, ^" w% q
- }: x- }& Z* X7 U
4.群选择器
5 U( \: z+ e6 o" @0 f
/ L5 E5 I7 P! w7 g/ J+ z( ?0 T当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
' d, t5 ]" A3 K/ A0 r5 |, r" C3 B# _! K
p, td, li { font-size : 12px ; }
( S! Q6 Y4 {) E% f7 V就是给li下面的子元素strong定义一个斜体不加粗的样式0 _: P+ @7 T- c5 e
# u1 x& r6 ~4 X# m* W+ U7 r6.id选择器% H0 O% F. G7 b! a
+ e8 Q7 o' C: k& u* D用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层. n) e. V9 V# f8 Z5 M2 ~5 h0 d
3 l. T; X0 X% H7 U6 d& r V
) L$ _7 Z- L+ e/ S. ^) V8 ?9 f
然后在样式表里这样定义:
) ~* w1 [" B$ y! G
; Q5 X9 k( A3 g+ Q: H1 y" t* q+ T- [
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} - m8 A( ^4 I* [4 P7 s+ l
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。7 n% D4 j, E; q* `
8 q+ P7 _5 S) k. n; I5 ^
id选择器也同样支持派生,例如:: U* j5 N4 ^) O, ?' c. O
#menubar p { text-align : right; margin-top : 10px; }
! T, N Q/ n v0 c这个方法主要用来定义层和那些比较复杂,有多个派生的元素。& l% e" q9 \1 N% d/ T) L
8 A' }) ?( M& |5 W
6.类别选择器. {$ F9 c' Z2 A3 t& ?5 z2 D7 Q
C6 K& t5 {# c# e7 i: I5 K% ]
在CSS里用一个点开头表示类别选择器定义,例如:
- _; x. w5 K W! a.14px {color : #f60 ;font-size:14px ;}
1 e, J1 ^ E$ D5 a2 F# t6 L7 c- A$ M( o) ^: M! i) T5 i6 M" j
在页面中,用class="类别名"的方法调用:6 f! I, y* v" J- ^3 z
<span class="14px">14px大小的字体</span> 0 y' o2 q! P( v8 q
6 X, h( f1 f! [' [' N+ }
这个方法比较简单灵活,可以随时根据页面需要新建和删除。2 P+ {8 a( V; `" D+ @$ J
3 n, f; ~" s* f7.定义链接的样式
; T) P8 [2 R' y; XCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
2 K8 r# W" `+ m9 s6 }2 oa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
`) K: x. t( Ya:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}; j. O5 r8 D. v
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}" B- C. w8 d% n+ q/ j% A
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ( L: E' G% i: e! D
" o+ h! l1 r+ [4 |3 f2 ~, T
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|