|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
+ d/ Z% Y Z3 B: r; [# l. s- y( B+ S& E' }+ e3 P
1.基本语法规范
' I5 H; R D) n/ V1 o分析一个典型CSS的语句:
7 c8 c/ H' O# L- ap {COLOR:#FF0000;BACKGROUND:#FFFFFF} 9 \, u$ U2 B. I4 r; p+ ]6 t
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 1 i8 m" s1 [0 C- f9 X$ v: V
样式声明写在一对大括号"{}"中;
' v: ~ M& c4 ~1 U/ [# ?COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ! t* G$ E. p/ z ?# T) |; V
"#FF0000"和"#FFFFFF"是属性的值(value)。
; ?3 ~9 S6 t) ^5 b
/ E5 v; c: \+ S/ L2.颜色值
* X* U( [* ?# @
% \$ o3 b' K3 O' T" S颜色值可以用RGB值写,例如:
& m, C$ a6 G: E& I2 A8 C6 c: T4 ~, n
. ?& z. X# n, d5 b+ p) x3 _
1 d+ {; _2 E4 l+ e J# O' v# E5 w,也可以用十六进制写,就象上面例子
7 x3 ~- p/ T2 {/ g1 I% c }
9 {" R" I* T6 g
" H; O! x7 Y; y如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
! H$ q4 ^8 f( L" I
2 E" `8 H6 v5 j: N$ k3.定义字体" c, m1 J6 S! i, Y% s$ l7 s
web标准推荐如下字体定义方法$ j3 h! f" h& C7 N g) V
$ c; x4 i$ y- Y" m# M" W/ pbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 2 j; B( H- z) ]4 W- S4 R+ g
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
" |/ j5 D7 Q# q; k3 b' rLucida Grande字体适合Mac OS X;
- ^4 S: h& n* Y6 O2 R- ^Verdana字体适合所有的Windows系统;
- _. }1 u9 A5 H7 Y+ }" G% _Lucida适合UNIX用户 & E% f: L7 j3 i+ p
"宋体"适合中文简体用户; , R3 f7 f$ n& w
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
" t2 ~& [/ Y7 y+ z4 `& Y0 a: |9 z+ l+ h% y! l
4.群选择器) F$ @+ I" F3 m* j# B
8 T9 [7 T( y ^" i: N5 g0 }当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:. @: R$ H) j* g+ `# k# e/ \8 u- C
# P7 b2 x6 _( r* C: |/ J% j
p, td, li { font-size : 12px ; } 4 H1 O" j' p& a4 f+ R% P
就是给li下面的子元素strong定义一个斜体不加粗的样式
. U2 @& T2 J4 `8 c3 R* E6 s. Y1 b( t4 s0 m* X" v9 L+ I
6.id选择器
. U% I4 l, s- Y
; ]6 N- y% O: X3 `9 j, s用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
8 `& p( E$ J3 v6 |: r, t: ?- N% \2 I9 ^
! g5 q. ^+ r, ~9 `然后在样式表里这样定义:' q: {2 {+ r! w* Q5 J% N
& }6 L/ J7 D: P4 _) S' i' ~, E: f( [8 r* j F% u
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} . X! h$ ?) {# H' l: X0 `% W
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。7 A9 c$ p! M1 }1 L- t3 n/ R
, g! y2 M* a: J+ |& }/ n8 sid选择器也同样支持派生,例如:
: }* T4 j. _6 G8 R7 {$ p#menubar p { text-align : right; margin-top : 10px; } 5 n+ K+ U- }9 p9 _; D- F& U) C
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
$ y$ d) t0 l7 s2 m" u/ _3 |6 q$ h% p4 g/ d
6.类别选择器0 j. x- X0 ^9 z ~
2 ?" \' K2 m' J ]/ c6 A1 K
在CSS里用一个点开头表示类别选择器定义,例如:
+ }* [" N2 P6 u2 L.14px {color : #f60 ;font-size:14px ;}
2 W* X; r) L4 a$ t9 T, x4 F' H/ X; U
7 X) r5 X3 ~+ }$ j: j6 _4 W2 I在页面中,用class="类别名"的方法调用:9 E" x0 T/ b. [% |, \+ b! o3 g
<span class="14px">14px大小的字体</span> ! M1 F; u: X8 ?. R# I5 o- D
, U9 U! C3 s5 W% j2 u这个方法比较简单灵活,可以随时根据页面需要新建和删除。6 k; p6 h$ X% A' Y
2 ^( D( d0 G' Q& v9 j. M7.定义链接的样式) {1 W+ r0 `3 R& R( y S
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:" R' p% u& z6 J+ k* w9 A
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;} J! X, v, l! W: k5 q/ f
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
% h6 h7 w. p5 ?- q& q0 M- H2 aa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}% M, V& _% c0 p z- L, r/ f
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
8 ~" W! Z1 n8 m/ g$ N* b, M* R1 X% Z6 \/ R
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|