|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。/ w1 m! _5 V, i* i! |' p g5 Q' _
& R5 [6 ^% x0 i& J0 a1.基本语法规范8 n# ?; B! C, W, R* C2 R
分析一个典型CSS的语句:- f+ }7 E4 x+ Q5 d
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} $ R4 l: C- z9 O) {$ d% _
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
3 d/ g+ [$ ~5 J. G- X8 w样式声明写在一对大括号"{}"中; % G/ R& z" W/ \9 C
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; & r3 I. k9 r9 |; r1 D/ R
"#FF0000"和"#FFFFFF"是属性的值(value)。
. \. W# }" G/ M6 L; m5 o/ `, G
' I% }: B( d2 F A! U' k5 n2.颜色值
" Z5 N0 i! j) t
' M# u$ F: u) J0 e, R' J3 x. j颜色值可以用RGB值写,例如:/ S: E" F; P) P W* p) J: C
/ p1 m! B$ \9 K/ v: o. y( \/ X/ b; k) T( B9 T9 M! g1 e' @
,也可以用十六进制写,就象上面例子
4 G2 w8 q# E, _& v! B Q' Q7 W+ U* x! `( }, s- W7 l: u
6 t4 i0 ?3 k! [- h9 q! V如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。6 V% m( V9 @1 H0 Z$ K/ A
- y" v) k9 Z5 R9 O
3.定义字体
; g4 h* n" K+ i4 v+ jweb标准推荐如下字体定义方法
6 T+ W Q8 c- o
8 ?/ n) B. F& S4 N$ Z1 `body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } - {# W3 G; P4 d) H3 A* O" Q/ u
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
+ |( w6 ?- G: a1 w) d+ y& ?2 a7 YLucida Grande字体适合Mac OS X; " p( G. m- H! x. y
Verdana字体适合所有的Windows系统;
! S- Y) |& ?* L% z5 A: w% N1 T9 V( FLucida适合UNIX用户
3 x) `- C$ Q" k0 d( {8 v"宋体"适合中文简体用户;
) V1 C" F, ~1 b6 {9 Q& Q/ V如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;; k' P( r8 f& ?
3 _+ B3 P( r! h+ @% t4.群选择器 U4 T t9 W$ U0 \( l7 l
- X2 R2 C& A6 T' t* O当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
; \/ b1 |7 k' J# H8 g" ]+ r- x2 f' \9 h6 ?1 z3 Q# p; G
p, td, li { font-size : 12px ; }
- J& p u( s8 s就是给li下面的子元素strong定义一个斜体不加粗的样式
0 {# w: N) P! N6 \, }
, f- q) @7 U. h1 e1 \9 l2 _0 x, m6.id选择器! J" `# [& }/ U' x1 B
2 t; F4 D4 h l, p4 ^用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层3 e, |% Z9 E! O' v8 ?" ]* l+ g$ N* x
1 _& X* t, u: u7 M2 m$ t/ V2 P$ m* U$ _5 {% M1 ]. ], t, {
然后在样式表里这样定义:3 R. W! |1 O3 G+ Q
' \; g5 b' }5 M Z' \6 d2 X
1 A" f7 w" i/ P: F+ o. ~! Z* S#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
9 V8 U& l( c: q& L$ C7 f' Q其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
, J4 Q1 n# J4 r8 c% G
, s W, W- M0 F: G' l, mid选择器也同样支持派生,例如:
; y) s5 P4 s1 k" K/ D#menubar p { text-align : right; margin-top : 10px; }
: p9 R# }/ n7 s3 b. }# \" @: h; _这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
9 B1 G( J" |0 G5 s% T* V# c# i+ @$ U0 t8 M- s, R& g/ e7 F
6.类别选择器
2 s; J! Z% g! C# B) f7 X- E" g
0 R X; Z9 d( ^ z0 g- n/ z在CSS里用一个点开头表示类别选择器定义,例如:
/ d7 s' ~+ l! s4 e) S' Z6 w.14px {color : #f60 ;font-size:14px ;}
5 s ]; f1 Q7 i3 C: m
5 J3 s, ?; k( C9 G- r* ?/ ~4 _在页面中,用class="类别名"的方法调用:
0 x# {4 J: I8 P- h<span class="14px">14px大小的字体</span>
|2 k: R# q0 ]3 O. S) w4 a
- f# ~2 }1 `3 U0 \; t7 f/ P这个方法比较简单灵活,可以随时根据页面需要新建和删除。) i+ ~- O* j: a$ u9 t, J
P/ _% ^4 c0 Z. L
7.定义链接的样式7 s/ R6 H# D. z
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
" _# V/ |$ w! }2 q4 ?$ O7 za:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
: Z4 f# ^1 Q; g# `+ ?" La:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
* h1 V6 i: m0 Y" d& Fa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
$ _: x: d( }9 M, F/ `8 ]# }a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
+ ^, F6 @4 G6 g+ H3 f
+ L3 y' ^8 P0 E* P) {以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|