|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。4 N. q; }" k0 S( i; o) K' O, U
8 ]( R. A7 {, w: R5 a% M
1.基本语法规范( V+ d; T- d& S9 B$ b
分析一个典型CSS的语句:
- V4 L( B0 T0 K G! _) H' v) Lp {COLOR:#FF0000;BACKGROUND:#FFFFFF} ' W$ [, Y Q, _4 M3 D
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
) w- w3 M9 a! z F- R' e! D样式声明写在一对大括号"{}"中; 4 o+ |6 e8 d; `# D. k, r
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 7 K; m* X# t9 U1 Q4 H
"#FF0000"和"#FFFFFF"是属性的值(value)。
2 d: Q1 ]. ^$ H5 N
7 {, b, \) u0 f ]5 a5 V% h2.颜色值
# l" i2 Q. f5 C) K: u8 \9 }8 Q7 b+ ]8 v+ d4 |" S3 K% \( l4 p
颜色值可以用RGB值写,例如:
) [* ~) f6 R" n5 x0 f# ]6 O+ d0 G+ ]* y7 z
( {6 l' [! M5 [' ],也可以用十六进制写,就象上面例子
0 E1 K7 P) p- }$ [. }* Y/ K+ |$ C \
& C; r' F$ i2 n L" I
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。* ^4 l8 P% z B4 O! t2 f( O: B6 P9 y
* g! L/ d9 k/ x/ J$ Q: O+ F( V7 t3.定义字体
. S: j& C. A% t, u2 v5 _* |web标准推荐如下字体定义方法
$ h# _9 o4 _6 N1 t- k. d, J7 h4 }' r4 v& Q) G9 N0 U
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } & C7 R C9 O% \, s! i+ `( s
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
; V- N F% p8 ?/ y3 E' _- `Lucida Grande字体适合Mac OS X;
* w( K, g5 y( [3 P, OVerdana字体适合所有的Windows系统; ; c7 B, u$ p( D% j2 [" ~ |
Lucida适合UNIX用户
5 n# ?5 e9 U2 n7 ?6 g2 P! s4 d' p"宋体"适合中文简体用户; B( _. V" c% C/ k# I: }+ |7 _
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;6 M0 H( A4 x- b2 s0 O" o7 R
% g& ?6 N: s! b9 e
4.群选择器
6 @" Q5 w9 P' v0 p0 m, F% d1 n4 Y
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:$ U& ?% m9 W3 Q$ }2 y1 ^7 W+ W
9 C! `$ q' q k0 A E: Q4 Z5 `' L p, td, li { font-size : 12px ; } , A; ^4 d1 [" _ d$ i7 f% Z
就是给li下面的子元素strong定义一个斜体不加粗的样式
. I9 _) L" r: X
+ z6 i$ k+ L2 T# _$ D6.id选择器
0 j6 u; y+ l, D6 f
1 |: q' X' Z' n) N3 L! V& S用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层2 z6 M; w; x2 C& u8 Z9 Y" x3 g* S
2 ]: G& x- Z* A8 U# E* y
5 m5 T6 _0 i1 Y- I! U
然后在样式表里这样定义:4 x( e0 n; P4 u; s8 j# ]. P& ~) b7 K
$ O1 s* }3 r7 `% }
+ q' S1 {5 v( I) c9 H! `+ A6 Y, |
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
6 c1 C- y8 w( q" u L/ P5 {$ V其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
" B d( c) U+ E+ u' H9 Q% u
. L9 r; U) Z, Uid选择器也同样支持派生,例如:
# j+ t5 V0 f8 }; U% G# T8 j# Q#menubar p { text-align : right; margin-top : 10px; } 2 A0 I* z8 [% `0 A* y" t% v
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
5 f: W" f1 c% S/ S+ y4 s9 ?9 q- d A' _3 r
6.类别选择器
- e1 n% s# w2 ^) C4 Z3 X. r% V. C' M& K: \* h
在CSS里用一个点开头表示类别选择器定义,例如:2 F# q7 C4 T5 U! j
.14px {color : #f60 ;font-size:14px ;}
% G( b$ m/ s( L/ y. K2 D6 d
2 S8 o) Q' S. F& i$ }( F4 w' E在页面中,用class="类别名"的方法调用:
1 G+ ?- C$ S; b* @<span class="14px">14px大小的字体</span>
a/ A6 y/ l! Y$ s, f3 E; h! i# h( q( ] Z
这个方法比较简单灵活,可以随时根据页面需要新建和删除。0 u) u; T* _: `( u
0 j. G, W7 T/ O4 B/ |7 u U5 K2 P7.定义链接的样式
4 j7 | b% ~! ~2 W- RCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:- s0 ?0 P7 d0 Q# k2 R4 u; _
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}3 V4 ~7 O- k0 _5 L5 s! A
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
5 u# b! A" I- L( ?+ i7 w+ Ka:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}9 X0 H- m/ v3 D
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
6 A$ b9 |3 Z* H# ~# s7 H7 C) ~$ j: ]+ Z4 y0 v: K+ G
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|