|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。; m O; c- l% \4 o; W) N
; P4 v9 a7 L9 T- S1 x, X
1.基本语法规范
$ c# \$ X$ u0 n, u2 S9 p8 K+ r分析一个典型CSS的语句:
$ {( ^) k9 E. \4 \1 L' ^7 T% }4 wp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
2 ^3 \5 p4 Y' l1 @5 G7 u. R9 {其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; + m+ u3 v/ X. ?
样式声明写在一对大括号"{}"中;
; a' r! {, O4 U- |5 nCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ' j3 ?! I: Y3 n+ L
"#FF0000"和"#FFFFFF"是属性的值(value)。5 d9 F2 Q, r" c9 c
1 [' |! q S: ^) j2 M2 ]6 W2.颜色值 V" j- U8 u e' m5 L* @: a' S
) U; [( \# X1 \$ [3 u颜色值可以用RGB值写,例如:
- w' i2 R2 b; h- G
3 ^% ~# u8 v: Q2 O3 g, h0 J/ K( K" {1 y9 S
,也可以用十六进制写,就象上面例子
, e- N$ m r; o+ T" g2 R0 l
) i6 }/ H2 p+ c; J* J7 r: v1 Q! N, K: o
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
8 K( U( h& E# ~ E/ D
( Y8 d7 n4 b. n! T% z& I3.定义字体. ^" b! s" S6 s9 f$ r
web标准推荐如下字体定义方法* O% s) q( M6 U
0 e! } I6 E1 @2 n! ^" B5 I& J) t
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } $ L6 @2 e8 ?4 l5 _+ |! m
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
/ P" S" t9 K6 C* \' T8 x; dLucida Grande字体适合Mac OS X;
( W' Q4 T. J* _* v7 S+ O8 C9 Y+ TVerdana字体适合所有的Windows系统; & i+ i1 I% b6 f
Lucida适合UNIX用户 4 p% ]6 X E; o6 W
"宋体"适合中文简体用户; / o) C4 v/ A- E! C. I
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
3 M9 h& }1 b8 j0 I+ A, [0 N: C! A! P( f5 Z8 t; E5 Y
4.群选择器+ C+ x* q. ~5 t, \7 h! g `
; ^* e e S0 x! y当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:3 |! p& v. r3 q5 B( ]. P7 m8 f4 F1 f
8 a3 T6 h" t4 v, e2 t" e# N# h" ]
p, td, li { font-size : 12px ; } ) l" k3 }* x( m- r0 m: H7 |
就是给li下面的子元素strong定义一个斜体不加粗的样式
0 ^; f. n( r- _' ]5 T5 p7 c2 a7 |: e: j
6.id选择器
% t7 ~+ n; Z9 P7 v& e$ J$ D/ }& r9 ?6 w* D2 p- A$ j1 j
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层/ n5 H! s a+ U5 D: n7 p( j5 {" ^" B
! ?, O) |0 S# U2 a
9 E! z8 ^- ]) U* F" v( x然后在样式表里这样定义:; D2 p: N' z% l! u; S O
, ?1 L; Z0 v( l# J: A/ t
& j3 p& L) [3 k8 D
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
[8 V, Y- e5 A& U7 G3 R, Q) ]其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
$ o9 ~* l& W3 A/ R1 f; h. g8 Y
' D* z7 [) P0 ^* C" qid选择器也同样支持派生,例如:
) v* k/ w. D9 T, X* @" {#menubar p { text-align : right; margin-top : 10px; } ' w0 U8 K) g) P8 b; z0 ^
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
" ]6 ?/ N) s% {' r5 s% A M2 k- v
9 G2 G. n6 T }- e" A6.类别选择器% P# L8 O0 n9 W8 n; H$ {! ]# z
( O! B8 u2 J) r. W1 U( R在CSS里用一个点开头表示类别选择器定义,例如:
$ O! J2 s" A5 Y: M y.14px {color : #f60 ;font-size:14px ;} - X" G* Q9 C: z
# t9 T( w5 R) Q( [1 I. h [在页面中,用class="类别名"的方法调用:
5 f7 s4 W" y9 @. H<span class="14px">14px大小的字体</span> ; Z* H3 @& h% Y; v; r7 w+ E
0 w- l& I, ~8 ` w5 L
这个方法比较简单灵活,可以随时根据页面需要新建和删除。( X4 M6 F. }% j: q) G+ @1 H+ P/ X, X
9 \; M! F9 ~ O! A! p; o
7.定义链接的样式/ O) s/ N+ L& `& e/ u) S7 u
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:" s1 G) u/ W( E0 D2 i
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
+ g) `' m" L: ^# |: Qa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
4 d( y1 v& l/ x% D8 ia:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
}$ o, f# D2 A3 h# X1 w- Ia:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 0 t1 H. x7 A7 g4 L) e3 A
! G/ o7 s1 j( K) ]$ V以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|