|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
" r- i) G3 y8 b: c. N2 ]
# ^0 _; t6 M6 \0 \' X1.基本语法规范
9 w. M8 F$ ?7 k4 {1 G分析一个典型CSS的语句:5 S0 G* T' z3 j: P b# P7 Y
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
! n& \! b q K, P! d% p其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 8 o) q& c1 w2 b
样式声明写在一对大括号"{}"中; * S; Y: _& R- t9 ]3 |
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; , Y) P9 b( M- m% s/ J [; w6 v# C
"#FF0000"和"#FFFFFF"是属性的值(value)。% P4 Q9 c& p; W2 g N" i s8 e
$ \2 `$ `$ q$ z5 G6 a' P; m2.颜色值
0 g1 S2 \. w% u0 H% Z% S: e$ R H7 \( l& c" }. V
颜色值可以用RGB值写,例如:) W% ^( C& I$ o0 `- a
$ \0 o# ^ U0 Y$ j6 P, n3 x; j# V5 X4 ~* r
,也可以用十六进制写,就象上面例子, e! Y6 y- ?/ u: ^/ Y- D; t
2 ~% n- C/ e6 R& E; X
! I/ K, i) }" P' N& D+ k' b
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
2 i4 s+ i3 J; b
7 j+ _6 ~0 m) H c3.定义字体
( v% K! {5 G/ yweb标准推荐如下字体定义方法
% t% E0 Q' m5 R: Y' D4 r) |
: y" ]% N* T7 r1 A" |body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
4 K+ W/ N& M/ o' _$ L4 c字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; % y$ H$ K$ @ p+ Q5 ]" t+ z& _
Lucida Grande字体适合Mac OS X; 8 A8 k, \+ H* o: r; Z5 S) [& V
Verdana字体适合所有的Windows系统;
i) l# L _) f% m/ XLucida适合UNIX用户 5 s6 H& ?9 l+ q1 E' C3 @
"宋体"适合中文简体用户;
1 l1 k( B% J4 U* g如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;$ L5 n( z5 V3 k3 \. x% ~
7 s0 M+ n. K, I8 m) L4.群选择器
: N0 D, S5 d1 o% T1 Q/ F1 ^4 \* G
: Y: e9 {: I5 @/ r) h9 \ d/ {当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
( B6 L3 }9 @, M
- D4 H1 S/ a) r4 s0 ^3 k p, td, li { font-size : 12px ; } " Q s4 {$ a+ e& [
就是给li下面的子元素strong定义一个斜体不加粗的样式 ^: r* {" J& F4 V# ]
- U2 S- l* E& V! `4 g
6.id选择器, t1 I3 {9 r/ R
7 t. Y5 f; E9 a5 h4 n; x- s用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
. o @7 R0 h6 [( |9 x. D; b+ [' ^: q) r; i- e( v; ]8 e! l2 ~; \
/ ]. S& q1 F8 y* W" O
然后在样式表里这样定义:& y; h; v+ ~9 H4 o
" E4 ?7 q/ u" ] Q$ O& o7 V
% L5 R6 i4 q) U5 ^; O#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
% t0 z) ?; f# W# a, ?& s2 Z7 I其中"menubar"是你自己定义的id名称。注意在前面加"#"号。0 @) x% `# }4 ~& B9 g! b* u6 W+ v* @
# W7 s3 b5 w- m6 w) did选择器也同样支持派生,例如:
; l( l5 \! Z" D6 L, |#menubar p { text-align : right; margin-top : 10px; }
; A: R4 G8 h3 |. S [: O, K1 t这个方法主要用来定义层和那些比较复杂,有多个派生的元素。- L8 g) j/ X8 T6 p+ A j. f
0 ^5 Q( P/ O1 k. N2 Z+ ^% M5 k, m) R6.类别选择器% e1 f2 d1 y: L* f! k6 k
- N+ D9 a4 f" z- G
在CSS里用一个点开头表示类别选择器定义,例如:/ Y6 v9 D# M' p% o v( O
.14px {color : #f60 ;font-size:14px ;}
' ?3 c& N& G! A( h% A
- m# j8 r! x- c. u% R# g, l在页面中,用class="类别名"的方法调用:
! x" \( Q- p0 b2 p' r, F; Q<span class="14px">14px大小的字体</span> " I, C$ [5 q; ]7 O" j- }
5 o1 l, ?1 j: i# i2 g, r+ z
这个方法比较简单灵活,可以随时根据页面需要新建和删除。- ~% j7 c; _- x9 l! u% K3 J
2 f6 E; l6 y7 |. j' O1 T8 y
7.定义链接的样式5 Q8 X. n9 O0 D& s2 d/ l+ s
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
/ M. M( h! N/ k- g& oa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}. R9 U. |7 U7 }
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}: B9 B2 D9 A6 g5 k% E; ^* g
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}; Z5 p2 Z5 O( I, _
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} * o! L( ~% F8 e: I: z9 I, V
, ?* X$ C% |5 D- t* J& M以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|