|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。; V1 _6 C$ f5 ?) Y4 }: J3 U
0 H: o |; g7 Y7 k2 N1 U
1.基本语法规范/ O# K2 T5 x7 z! F6 N* |& s. _5 a
分析一个典型CSS的语句:% Z" l7 ~2 v( V( [5 `! ~
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
% q1 f( a( X7 a/ W1 W其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; # |, b% m8 z4 J+ T0 H& V+ q% F
样式声明写在一对大括号"{}"中; ( m5 T6 v8 w) h
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; % f2 L* r6 |" b* }0 T: _
"#FF0000"和"#FFFFFF"是属性的值(value)。- B0 b0 r1 V9 B& v n
- q3 b1 }$ m, p& C" N2.颜色值
) L3 H9 G0 t8 `2 T2 g" X( D2 J* }( A3 a: q8 \
颜色值可以用RGB值写,例如:
, {; d5 J7 [5 q) L7 L O) n" Z2 Z7 [) @
" D) D+ S: V' c: a' \
,也可以用十六进制写,就象上面例子, K) Q# f$ _5 T$ W+ |' x
9 Q4 D1 d# _+ [& p; `
6 ~7 |- ~+ ~3 j4 B1 t' c G如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
2 a- g. C" T4 f
" [+ c. ]6 q, U: c, U4 f9 }3.定义字体2 g% t) P+ x+ _6 T
web标准推荐如下字体定义方法
. ?. [4 N7 D2 F6 o" B& K
# Y- K) y; w; s- ~0 T+ `/ mbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 4 y# [. C* `- l( a4 B' ~
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
5 h/ M" E' J; W; P, |Lucida Grande字体适合Mac OS X; 1 p% B' E8 V0 q$ l3 `$ \9 I$ n
Verdana字体适合所有的Windows系统;
. k/ [; C0 f; v. c, g; u5 MLucida适合UNIX用户 * f* p2 H! e% X" ~; M) F4 {8 v
"宋体"适合中文简体用户;
( M, D, e6 w; ?% F1 N; u& i1 K如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;0 F9 W1 c* X9 ]7 P
6 }5 m2 s4 D6 t! H4.群选择器
. y6 J9 y; A/ a
+ c! D4 L; a7 H. s/ \ ^当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
- T& i9 l6 r. @$ z. h, l% Q# b/ h* a, U% ~2 O+ C9 f8 R
p, td, li { font-size : 12px ; } 9 T4 ]8 i$ U6 m7 W- Y2 F
就是给li下面的子元素strong定义一个斜体不加粗的样式
# o! [ O" ~5 g1 B; J2 U. a
" Q7 w: Q& W4 B+ Q6 L( X1 a' O# w8 r6.id选择器) W, @ ?/ h# Y" K. {; ?) s; f' y( e( j
7 b* P5 t! C2 v3 Y用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层( U# c1 m8 V$ V, Y0 s; S
* _- Q( p2 r* g' ?8 j5 t7 ^& U* p- n5 p9 u4 M% X1 W9 n
然后在样式表里这样定义:/ Y/ q3 s$ q) n: k; T+ r) B
0 E+ u/ N1 n1 E; T0 Q( p' z% ]; S9 B" C/ Q, J3 f( C8 U
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
" `& D9 s1 l! d8 t& K其中"menubar"是你自己定义的id名称。注意在前面加"#"号。3 c( h8 y9 N1 g! q9 s; n* {
0 i$ o8 _+ K. s! r7 T" F! {5 |# x6 n
id选择器也同样支持派生,例如:/ }8 I [ ?. d4 |) f4 m, n
#menubar p { text-align : right; margin-top : 10px; } + E V6 q9 V1 @' J3 a0 n1 b
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
! `- k! z5 e, O/ A; U0 c6 s; q/ ~* u9 W4 S/ u" u' v
6.类别选择器
/ r3 `& }% M0 I
9 N9 I( O. Z3 |在CSS里用一个点开头表示类别选择器定义,例如:
9 [; f; g$ D5 K6 @( U' a.14px {color : #f60 ;font-size:14px ;}
) N8 Q7 C* Q7 A) Q5 ]+ y+ d% N5 ?7 M1 C m6 `
在页面中,用class="类别名"的方法调用:( B3 l! @7 e9 ^; H4 [
<span class="14px">14px大小的字体</span>
o3 L9 h @( w
# f0 ^. u T: v% E8 c6 L这个方法比较简单灵活,可以随时根据页面需要新建和删除。- |4 h& k7 M" B+ V0 {
/ G& F Q9 z1 y3 @9 E, `% ^- ], X7.定义链接的样式
/ }. x6 o. e! y- J4 {' nCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
; K" X6 Y/ B+ k5 |- l9 \a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}( c, l# n1 W% B2 X# E
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}/ l: A/ g6 N& k) N0 `( P2 S
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
+ V0 a( m, Q' \" w& r: h# ~' E; Fa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ! l& r; w; i# J) ]- E
0 g2 H+ y- k% _: d以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|