|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
* Q. Y" @8 z. ~# Y# p. S ]8 \- Z8 c& I) d
1.基本语法规范
* Q6 K* R; k$ n. g! s分析一个典型CSS的语句:
% `1 f5 o# _9 k8 j" E2 ~6 Q! e4 ]: Gp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
; J$ ^9 @( M; {* J其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; $ c6 h5 ^5 R* q" V" W
样式声明写在一对大括号"{}"中; 4 v' _. G( c, i+ o) E" K
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 0 ?+ [( L4 h9 ]$ W/ X
"#FF0000"和"#FFFFFF"是属性的值(value)。- [ A9 B: K' g3 `& }" `' b
1 Q) Y3 p4 ?0 m( P7 n3 z2.颜色值
' x8 U2 X- t! Y
! a, ?" {1 ~9 N- x4 i4 p' m颜色值可以用RGB值写,例如:
7 y# L% Z$ X9 e$ X. j8 E0 f( ?- z4 t
, l6 o# i' t# ~2 K
,也可以用十六进制写,就象上面例子
% [0 U" N9 M. n
2 ?$ c9 v$ l' P( s$ q" E1 q( F
6 A; K- |8 W2 I9 s( W; P. s$ n如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
; h! @. x# s; m
. v8 `% @3 x: \% v5 r( j3.定义字体/ i( J0 `) @" K- U, ?0 [+ I" C
web标准推荐如下字体定义方法
3 e M3 L0 j# \; @+ e
7 R1 [$ d9 h4 x3 B, Rbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
p! o0 C+ y; B; A( d; \4 G4 t字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 6 k2 _& Y8 E8 f7 v2 i% d
Lucida Grande字体适合Mac OS X;
; B% Z( z( q6 \Verdana字体适合所有的Windows系统;
c! G9 x/ ^! j1 N- aLucida适合UNIX用户 8 [8 b! _ O) {( z f+ H: P, i
"宋体"适合中文简体用户;
7 O- g; m' G8 F8 Q如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
. _' v1 s* S( b9 B1 y$ w. A( y/ {: J+ L
4.群选择器, `3 V I/ l. b8 M- C$ v
- t4 y0 K) h X& V% G0 c当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
. J; R+ h5 j( C" l8 _3 m8 W2 y
/ o( }: Z1 G: W4 Z1 O p, td, li { font-size : 12px ; } , h `$ ~8 d3 D) y3 x1 j$ ~5 O3 Q
就是给li下面的子元素strong定义一个斜体不加粗的样式
z" C+ z- i# n+ {' a4 s6 b5 Z, x9 S
6.id选择器
0 ? `. u/ X/ r: @
; k: D E5 Q3 ^6 i; f( e+ a用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层" `5 Q5 r. G6 y! ~1 q1 ~7 D
4 x, i+ p" @! F! }- i! k# @" o& ]6 ~! n% K
, n6 w, Q3 o3 K. H
然后在样式表里这样定义:+ B* N' X" W2 H( o8 Y- ~) t) h. b
. f2 j0 u0 j) ?
4 n' z1 q) m1 F4 c0 D @#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
; c! {$ R/ J6 a! ^: P其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
; F. E* U4 d% ?& ]1 W6 a/ ~# n4 p
id选择器也同样支持派生,例如:
% h! ^4 e/ U! C# a#menubar p { text-align : right; margin-top : 10px; } # e- R, ^" w# h. K3 ?& C
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
; t+ D w( w' p4 X0 l0 b
9 l) T& _7 G. L" L2 ?6.类别选择器
) B2 o1 Y* r8 a- o1 H6 ]" Q3 V" A: j5 E0 ]' r; E
在CSS里用一个点开头表示类别选择器定义,例如:- ^' i3 b4 ^" u9 j+ T3 ^& _
.14px {color : #f60 ;font-size:14px ;}
0 D" B& y9 o2 n* U9 K8 k5 S3 a, x- M* O
在页面中,用class="类别名"的方法调用:
& K7 g. u/ Z( R: W! Y1 M<span class="14px">14px大小的字体</span> 1 J& m8 i5 [2 ]) R* ^. w
7 i( `7 z) ^3 M$ E- ]这个方法比较简单灵活,可以随时根据页面需要新建和删除。% x- k5 I+ V/ C7 P% v2 j1 ?/ n' W x
' K# T8 B& O$ l" g0 x; r: w6 O
7.定义链接的样式
3 |2 w- K, d4 }' [9 d% d/ hCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
7 `# Y0 @. O; ?/ Z4 |a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
- G6 r) U+ T* w; D, j8 {1 F6 da:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}7 I' T# @2 }3 k0 V
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 q5 d7 ?' j/ Z0 n. x
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
( l: W' _6 ~3 |9 L
% P% d: i! E' ?! H以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|