|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。% R0 L5 c( J2 V
) r& C; O, v9 E: r
1.基本语法规范
0 i% _. Z- s% @, V J6 b5 T分析一个典型CSS的语句:6 o0 u! G, ~3 g7 g) G/ a; L7 ?
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} & Z$ W( `8 [+ F5 `5 Y
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; . |' }/ U2 g) p+ e3 y9 ?
样式声明写在一对大括号"{}"中; & [% A. z& ^9 V
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
: k4 i4 W# b b"#FF0000"和"#FFFFFF"是属性的值(value)。
' Q, a, h2 |4 @) ^
) V/ I* w# P7 g) d, N2.颜色值( P8 G' O( P& ]7 C0 S+ p
0 M$ d/ o9 e0 ~; _7 i5 B颜色值可以用RGB值写,例如:- d; [9 i3 K4 R( q
' n+ l8 k+ n8 J: R8 J5 T( E
( X" d+ z( U. e/ J7 v* P,也可以用十六进制写,就象上面例子' ?- f+ Z( ~& E- Y! O
8 Y* l9 n& l+ f- G6 x! v; J7 u4 ?9 g, m+ A# T; B2 T8 c
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。6 j& W$ J+ H- Y$ c2 Q
9 G6 `9 t( t9 Z3 E. P
3.定义字体; V3 e( }& t3 D7 l6 D/ H
web标准推荐如下字体定义方法
$ X% m& W6 {9 Z7 d1 t8 V
$ A/ l0 p$ `. ~$ g- Y) F3 I& d+ Z! Fbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
4 s7 h, P; L U1 T: @* v- n字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; # p1 z/ \$ h! W
Lucida Grande字体适合Mac OS X; % n" ]3 v1 g4 `1 O
Verdana字体适合所有的Windows系统; ! j4 Z5 d! u q1 z" c' w" R
Lucida适合UNIX用户
8 g T. _( R$ b7 U"宋体"适合中文简体用户; & Z$ `3 y6 h- z$ V j2 o, g
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;/ u3 g- {! l" b; O& u& `
3 f1 |& m- A- m6 W+ Z, A' }
4.群选择器
* X# o @/ U6 C5 J: U( o
. j2 Y8 [) n+ E* S当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:& O% T+ B: L4 Z) r
1 A! H& [- m' L/ P, q q p, td, li { font-size : 12px ; }
3 ?# S# g1 H; S3 {6 X. j就是给li下面的子元素strong定义一个斜体不加粗的样式' o' v% j5 x4 }- v3 t
1 K2 ~& f( ^) H; U9 V6 i
6.id选择器
: Y) ?# I* U& }* H% p1 m" F I- g
+ n% ]2 m2 `+ W7 x. E7 _ N- {. r用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层- G0 c$ H8 G5 ^! E( j; w6 X
! J. x8 f. N, v# s( e8 D; q2 Y1 N: Y; Z9 K! e5 R. V; u
然后在样式表里这样定义:/ u3 k4 [/ q: {6 L& s
# G) p4 h. o/ b
+ D! F' a! z( S+ w% h8 T#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 8 m, s5 j% G) J; y- O
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。3 I( Y# T) `# ?
6 u4 ?2 K) o5 j' ]id选择器也同样支持派生,例如:
5 B9 S2 L( a. p0 e( R#menubar p { text-align : right; margin-top : 10px; } 4 {' O) e7 `: N6 q
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。. l6 k$ B5 y9 M% S. r
6 g( A" y% q7 Q
6.类别选择器% q1 m2 a- |( Y ^+ ?
5 J, f7 g* J9 v" o `2 s. N" r
在CSS里用一个点开头表示类别选择器定义,例如:
( k: ?( p8 k# H.14px {color : #f60 ;font-size:14px ;}
3 [3 t0 N! n, q. C0 U" @1 b. W2 k: h/ J& w: c
在页面中,用class="类别名"的方法调用:' X; r" u) M) F, Y& _5 W, m
<span class="14px">14px大小的字体</span>
" l& X# s r `
% T# k1 b" |1 I这个方法比较简单灵活,可以随时根据页面需要新建和删除。: T U) s; S" t f2 f
- U$ ~5 H! u( _! X- R8 R: v
7.定义链接的样式
c+ W) w7 y& G2 b& p+ z5 T1 WCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:, K; P" z5 [; e" t& N- u' h# I
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}/ W! I+ H& a4 I3 M
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
0 d$ W/ V0 u4 e6 N, Oa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
; B8 x) d8 N- Z& d( ~- k- na:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
6 a. i+ A' g3 O( O* Y% i$ L7 [
7 p6 l$ P7 @) s) H( I以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|