|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。9 o6 S8 a' E7 g! _6 w- f
; _# |9 |- z& {9 ^1.基本语法规范. G) J. _( B k6 l
分析一个典型CSS的语句:% q; C& r" {! p' h! N' e
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
2 D2 b, f; @, u9 ?* ]. s @# W+ y, n其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; * t2 U9 l7 \8 ?. t) }# b$ n$ f
样式声明写在一对大括号"{}"中; , a2 P% ?- j$ z. }/ L6 h, Q
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 6 X5 \4 @7 K( @4 c; v
"#FF0000"和"#FFFFFF"是属性的值(value)。% v4 k" z A5 \6 q( a
6 i' r- y4 _+ R2.颜色值. j6 q$ {& f2 D
1 ^1 Z0 R' Q' F: _' W1 C ]% x
颜色值可以用RGB值写,例如:8 d4 `" J4 Q" W1 v
! S7 n8 W/ P- x: {- D7 s
) Y9 o4 l+ H; t7 Z6 F,也可以用十六进制写,就象上面例子
. _7 s* G- s% a( s2 t
- W$ k' b Z; k& u, v2 I& k* A$ P1 t8 w- f
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
1 J3 o. l N# \9 A. k: L& R: n8 `3 w2 A5 {& S# ^; T
3.定义字体
: A/ g! C+ ~' ?8 {( G, L0 l- G( wweb标准推荐如下字体定义方法
0 x2 a" I* t1 n5 j9 j& O3 ^$ y, [' ?+ w: \
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 3 }& h& F9 k0 X5 \+ d) O: C; ~6 c0 a! N
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
& J) `. f0 ?9 _( g8 w' D2 ULucida Grande字体适合Mac OS X; / t4 i( u H+ R# s; ~- l0 i
Verdana字体适合所有的Windows系统;
" _! W, W" i) s3 I5 TLucida适合UNIX用户
+ D" y! d2 n9 g: O"宋体"适合中文简体用户; : M. K: }/ }/ W
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
0 {2 g- m/ I3 u* }0 l+ y# R$ L0 h
: f v _" g9 D2 l* j9 C4.群选择器
# m9 E* _# z! Q5 _) e- O
$ n7 C& e' w! f$ I$ t0 I; |9 b- ~8 \当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
$ S) w) l- |5 w: n
5 `4 ?& ?: v1 ^5 h9 {, ~; J p, td, li { font-size : 12px ; } . Y" ?* C1 z& Y p- J ?
就是给li下面的子元素strong定义一个斜体不加粗的样式
F( }! @" W7 f: p
* t0 r: c3 W& |! k( a6.id选择器9 A# e3 s3 }# b. U% i4 K: A) u2 Q
! |8 y+ A& r# f. r) y用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层4 |$ z3 p* [ m7 D
1 g' R1 |+ r. p3 ]5 y0 o6 }. M" {6 W. a, }7 T9 N. H* ^4 p
然后在样式表里这样定义:
B2 G; L# q* R6 w9 E+ z r3 U) R7 Z* T* \: N1 ?; O6 j+ P4 v/ m
7 b* I- `% i9 d8 _
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 1 D/ ~" J" r1 J
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。. v) ?$ |- h% Q i
, q& f/ i7 ]9 o
id选择器也同样支持派生,例如:
4 Y1 b1 r. x4 J, F0 I( t/ w#menubar p { text-align : right; margin-top : 10px; } 6 ^$ E. _: l7 r& L" E
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
1 s# {8 V: q* j0 W- `
2 p3 q+ s2 ^% T. f! Q5 m6.类别选择器
8 R9 |6 ^+ r3 T; Q" e' F; V: I3 V4 ~: d0 t/ Q/ C4 G
在CSS里用一个点开头表示类别选择器定义,例如:! d2 h# g5 h! {* I
.14px {color : #f60 ;font-size:14px ;} ; ^) o1 m6 [+ M3 e4 @5 c
7 n! h% d6 B. }5 ^在页面中,用class="类别名"的方法调用:
& M, C& z$ R' J; d& H' o<span class="14px">14px大小的字体</span>
2 s9 y+ Q( C0 L; b. o$ p, g
% B8 f$ n# X H) k这个方法比较简单灵活,可以随时根据页面需要新建和删除。
6 b, i$ m+ E. s( `+ D- o0 ^ C4 s8 V
7.定义链接的样式( T! o. b8 g2 f0 }, n ~' d4 ]
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:' Y8 d" u# G! w+ s$ d% X
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}+ ?6 O. \, t- a9 `
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}$ R. S M0 @$ _" J2 T& ^ _" `- l
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 a% V7 _4 W! F1 t+ d" x8 _, j' o" |/ \
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ! @5 E% P8 {4 W: p0 p
* W5 U- v# R" k
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|