|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
( h$ \, c+ Z6 G0 H2 J1 X# W3 a4 X& n. K' L$ E, N. y3 W
1.基本语法规范
, D" o, ~$ m# ~% C/ Z5 y分析一个典型CSS的语句:2 l% }7 G* i' c; a! g: I; N! y0 e
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} 8 A* m% i& O+ n' r: y
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 5 Q. g: m0 d% C3 {2 v
样式声明写在一对大括号"{}"中; " T3 C6 w# x7 i/ w
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 3 _+ E3 e$ s$ Q3 v' O0 A4 u. H( d
"#FF0000"和"#FFFFFF"是属性的值(value)。
' k, U2 v* r* O* y* K: C/ z i) l7 \7 r* L3 q! u+ k! v
2.颜色值
# {4 ^- ` A/ v; q7 e. x! g/ ?6 [" O2 y* s3 ^
颜色值可以用RGB值写,例如:' B4 j5 z: q3 I2 ~ @& I. O
* ~/ @' d0 H# S( @: i. n( ?: m y6 @9 U0 I k- c: ]6 X0 C
,也可以用十六进制写,就象上面例子
* _% P" S0 K6 P+ F/ Q
# o3 U. d+ ]/ X5 W' v8 L" \7 f+ a8 H2 f! r) ^3 a
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。6 A1 C [, i% }! C$ B% V) \
5 X8 C0 K: _" V0 Z$ v6 I' D0 H& L3.定义字体3 L8 {4 n" F8 Q9 s q. t) h, _
web标准推荐如下字体定义方法9 g9 x$ q; o8 k! ]3 m1 h! m
& Y- F5 X+ p6 D# ` x5 j# abody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
6 r( q+ I8 P/ B; q字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ' Q' S) f# X. ?0 c3 n$ k% F' u
Lucida Grande字体适合Mac OS X;
" m7 a. z! I; OVerdana字体适合所有的Windows系统;
0 {3 G8 [* V9 c) _+ R+ RLucida适合UNIX用户
, y* Q% p! O# b8 ?) X"宋体"适合中文简体用户;
$ G: \4 A- Y6 X1 n7 Q2 \如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;2 h; F1 E5 D a* d0 g% G
. ?+ Z; k8 C( F. P) Z4.群选择器
9 o0 U2 O% h1 e2 n5 u0 n m9 P8 y2 a" p( |( A
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
$ P+ Q, J4 J& C g4 b8 @" q9 v9 \$ K
p, td, li { font-size : 12px ; }
/ Q; }( t9 |& F1 T% W8 G$ X就是给li下面的子元素strong定义一个斜体不加粗的样式
/ [3 u7 D; C! h5 W2 x8 t
0 ^& l/ S! J5 Y6.id选择器
$ I$ y: _! C$ p- a: O# }8 n+ r
7 s* ^6 e! K* W' C" s用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
% D9 U" u1 w! U3 K* n& W" T' K5 x. w
5 D/ D, q* A# i0 m然后在样式表里这样定义:
0 [, S: ^. ]5 x, F% U
8 |' {: V' a" d( U$ R' V$ H9 Q
+ U5 J4 _' ^$ H3 {5 R2 B9 k#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 8 E+ F9 y9 }/ E
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
3 T. D) T7 {& r3 b) q# A4 L( n& a1 Q5 ]! L% \$ \9 a7 B+ D
id选择器也同样支持派生,例如:0 n& N9 s8 M( n: y
#menubar p { text-align : right; margin-top : 10px; } 1 w) ~; f/ u8 a' T+ m9 R( J7 p
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
6 A0 J' |+ ^. x4 i% d7 `* e
7 E! t/ {% K1 J# R, [3 @2 o {6.类别选择器
4 p, c& v- j6 o/ [1 X! H% T/ Z0 y6 W
在CSS里用一个点开头表示类别选择器定义,例如:; ?) m& ^; X8 d% ?- [
.14px {color : #f60 ;font-size:14px ;} / x* x4 k1 f+ N1 s
0 v0 T4 W7 B0 G+ A在页面中,用class="类别名"的方法调用:
3 C: E3 ?; V/ Q \* \<span class="14px">14px大小的字体</span>
4 Z. N) a- _+ X- ?5 ?
+ c& D! v/ C5 G c这个方法比较简单灵活,可以随时根据页面需要新建和删除。# j. `0 V8 ?+ I) Y; ^
/ s- L2 R+ I6 Q7 q; H5 q" l
7.定义链接的样式% a+ i" t; a) F6 }7 Z' X$ Y6 h
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:% e. T( |" e1 ^6 p, x0 u5 C2 g
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}: u- K) t9 t5 b+ \
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
% {5 L/ F# k6 Ta:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
+ C1 y, J* X6 ]4 Q; Z1 `7 Z5 Pa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
$ A$ c( R. a% F& X$ R
8 m# u" D6 ]% E% z& m0 v2 p以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|