|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。( D- j6 X- [" E+ C
( v/ J6 y6 v: N7 U6 ~, R
1.基本语法规范- Y# d4 X: X$ P+ a' v6 x; e
分析一个典型CSS的语句:- v. J ^* k9 d ]
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} - _1 _' f9 A! Y
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
& @* d. H8 ~: o+ M1 V样式声明写在一对大括号"{}"中; / C* Y7 L. _* x
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; " L; V# P+ C6 B V2 q6 h
"#FF0000"和"#FFFFFF"是属性的值(value)。0 d; _- M3 y9 g6 |1 o- e2 f
% Y- E( e: x) @4 T2.颜色值
% y; l/ ~2 z- q4 B
7 T9 |4 n2 ~7 T+ M1 Q, i- W7 T颜色值可以用RGB值写,例如:2 c4 r3 y( S8 L5 T: \! ~
, \, H/ W2 Q, F8 }7 D; y8 l
! ~6 Y# l5 s5 \1 M3 ?5 q,也可以用十六进制写,就象上面例子) J5 j& J7 G8 W
# O# @& D- \ `
v) N9 s/ }1 E; I) p1 n如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。; A4 m! L+ ~! _: A
( L9 R1 q- V, l* G" E3.定义字体0 y# x2 U' m: y7 ]) v$ Y. C
web标准推荐如下字体定义方法$ q/ e% V. ~$ O( B8 C0 I2 E
* b$ E a* T. B8 v$ ?5 P% }3 c* f- l
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } , X$ L% O! i3 ~6 j5 g
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; - X9 {9 j1 r& W
Lucida Grande字体适合Mac OS X;
[& T; G7 @9 F1 z/ z' f1 PVerdana字体适合所有的Windows系统;
0 v4 Q7 A, y- c, X, _: \7 QLucida适合UNIX用户
& t$ A+ q2 R, m$ r% \# P% T"宋体"适合中文简体用户;
8 S7 k; x' ^0 g/ a# d如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
* y) K! u* G& b: ^3 v
8 M0 h, d7 M& \+ Y4.群选择器
9 e9 c# E5 k2 Y8 \0 F
1 K7 L1 g8 u4 |( j" p6 [4 [当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
, P! V* z/ X4 s0 W$ A6 R8 V5 B( q" j3 ]2 s6 T: O
p, td, li { font-size : 12px ; } , R# h+ \5 N) H3 D" L, a8 |
就是给li下面的子元素strong定义一个斜体不加粗的样式% \" ]& W- U# y; P
9 s# u& L: j- D: E) u" y6.id选择器
2 K4 r6 E( l- n" k$ _0 M) p' v$ U6 j2 V. _. m
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
7 b, [. P" O+ n5 [( @0 q) k8 b1 i$ z8 ~: R. R
% Y/ ` K' x* y1 Q* O$ E
然后在样式表里这样定义:
8 s- [% u0 Z$ w* n2 n8 A
8 t. q+ ?2 n+ S+ `4 h* J. A! I6 c. V/ [
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 1 F5 V1 B& }6 W1 s' {6 K
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
5 c1 W2 |* K: ^& M
; r- \( I. L# G Lid选择器也同样支持派生,例如:' s: Y* J. ^5 @- N& ]/ F1 l
#menubar p { text-align : right; margin-top : 10px; }
. y; ?, K6 L! x; w& ?, F这个方法主要用来定义层和那些比较复杂,有多个派生的元素。# f$ a4 ^; b; @, k
8 B# q; P* M$ J. j8 I5 w6.类别选择器( ]' @6 \6 b; @" ]
' i% `' A7 f* r3 i# \在CSS里用一个点开头表示类别选择器定义,例如:
! y! L8 z; Q; n$ o.14px {color : #f60 ;font-size:14px ;}
1 Y- E; u3 _6 @6 s% H& j7 l3 r' m# S' M2 Y( C
在页面中,用class="类别名"的方法调用:- G T; F7 u% ^5 `* A
<span class="14px">14px大小的字体</span>
( x9 J; S$ R) } o, L3 t, [& f) E/ m/ h1 x, l6 K
这个方法比较简单灵活,可以随时根据页面需要新建和删除。0 i" w6 v3 @! v( y
% w& F' _7 t W
7.定义链接的样式
% `, p& k& X/ Q$ K8 B* mCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:; ]2 y# e# A) W3 `) \; n Y
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
8 b ]- U' B0 P6 g3 ^/ a0 ua:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
: N* N$ u/ E/ U! {% y0 f; D4 |, Ea:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}) H, @; l. H1 K" N. z! L8 ?
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
8 ?) p4 {: A' c+ \2 w
! {* \! d a* a! S以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|