|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
! i! Q n' K$ I! j
$ V" q0 d: z: R5 {6 H' L1.基本语法规范
6 e b8 i( |7 m7 }4 W分析一个典型CSS的语句:9 f U0 M4 [9 w7 _2 |
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} + S0 c; L& Q9 s: y$ u
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
1 u+ q- o6 B7 z8 I7 ] e/ u4 L* v样式声明写在一对大括号"{}"中; 6 T+ i. V0 [. ^; X9 p
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 2 N c' f5 `1 ?- V
"#FF0000"和"#FFFFFF"是属性的值(value)。
6 D( X" c4 ], W1 Y/ @5 B! ^( |$ x$ s& R# e0 C" G% T5 A- o. y2 D4 b
2.颜色值
7 S+ W0 `9 r8 A+ _. @
; T$ s( B$ f" a, V颜色值可以用RGB值写,例如:/ t* y$ T& q1 A3 ?/ f/ {0 ?8 W
1 b* r7 J3 t1 A4 I) P& Y3 J1 N7 U
0 s$ [; F( |% f; Y,也可以用十六进制写,就象上面例子
" R J) }0 A( \4 j; A' `) Y- J% T4 v) I
\ p' V" e- a @6 n
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
k# @' U6 j- F$ Y$ Y* y6 p( t2 H- l8 G) B8 p- I/ A
3.定义字体
, c3 U- M/ H& j* F' D0 Q2 nweb标准推荐如下字体定义方法
, I* f$ h/ P( {( _) k1 ]; B' i. r0 F! m/ ?% a- z5 X
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
1 o |7 U+ r! r- @5 v% ^) K( q字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ' J& N- e( p. Q% s
Lucida Grande字体适合Mac OS X;
: h b$ @/ e0 x4 j; XVerdana字体适合所有的Windows系统; " c; O8 j! B) Z. d5 E# [' X" o
Lucida适合UNIX用户
4 D! R) d& B3 w. m4 p"宋体"适合中文简体用户;
# t( t4 T4 y$ ^" z+ m/ I. l如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
. O5 `: @: N3 l# I+ m
5 R2 e9 q2 s/ v- P) T, ]4.群选择器4 \" V' v/ N* K" h3 C3 b% _
, |/ W( [2 a! u) X8 W
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:7 m; [: @* }$ c7 b% `* g
; _3 b2 k2 `: I( t3 A( ]8 @
p, td, li { font-size : 12px ; }
% `+ |. Q2 K( V! T1 \就是给li下面的子元素strong定义一个斜体不加粗的样式- |& Q- C2 X B# C& c( [9 ~2 p
6 F6 s0 W8 @7 B7 W" Q+ R2 S6.id选择器; E7 P" W; W3 Y5 I
: g1 Z/ j7 Q/ r o" ^/ A, O) w用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
; O' V& Y( u1 z) [( Z! S9 k& A- o
/ }5 i& f4 U! ~' }+ i
& {2 S% S5 k& o6 m然后在样式表里这样定义:- ]0 X2 O* x3 H
9 x1 R: K8 |/ l- S
- a- v- c8 z2 M; h$ E5 p
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
5 [2 d. ]% N( H# s其中"menubar"是你自己定义的id名称。注意在前面加"#"号。4 l; C6 C7 y! S! i
1 b: G% v+ L8 d$ hid选择器也同样支持派生,例如:
/ M. F, C* o, o# q# B7 s0 m#menubar p { text-align : right; margin-top : 10px; } ; I& y, k9 Z* S* `
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。5 B+ d! @9 z& m: J* M+ n
3 a/ n) m1 n* n% ?3 r6.类别选择器
9 F, c! v5 N/ C& b4 P
& u- ^0 q) }* Y: y- I5 f在CSS里用一个点开头表示类别选择器定义,例如:
4 r" P4 y6 O5 v( u; o8 y9 l.14px {color : #f60 ;font-size:14px ;} " W" y! [1 N; u! E
+ K, t- p! o6 l6 g
在页面中,用class="类别名"的方法调用:
L2 I& w9 i* O. m<span class="14px">14px大小的字体</span>
4 i x: c+ n3 ~' z) d- ^2 h5 r6 D+ ^( T& a
这个方法比较简单灵活,可以随时根据页面需要新建和删除。# ~- I( l% Z) e! Q
: W' a% C j4 @$ d z$ i0 H+ i
7.定义链接的样式0 c# M) a) m7 Z$ ~# A: o
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
" v3 b* O/ V5 oa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}* p0 d7 |2 @0 N
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
7 p" f" \1 B: C# g7 a( q1 L* A0 Ta:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}. I1 E9 w0 x- x6 q7 G% k$ Y/ t
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
7 G0 n+ D" z$ N7 d6 Y" A! |5 ^6 K' ^& C* u& [3 f: C% i
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|