|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。( L0 @. G5 Q2 y G2 C; r
8 ?0 `) S1 G5 d' W. W- t
1.基本语法规范
) b% R* J3 f: q7 ?/ ^/ m+ `分析一个典型CSS的语句: A1 z; @: s% V- Z3 T) j5 n! n
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
. F! a. a2 {, @( v6 y# B- ^- u; ?. t9 d$ }: r其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
, r9 A2 F, q( i" c样式声明写在一对大括号"{}"中;
6 I/ T, E }& |$ r3 GCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
: h) Y+ E& d1 L"#FF0000"和"#FFFFFF"是属性的值(value)。- c, d4 F! j. r- U1 q) ~( F
: T, N4 u) O: H& _+ R8 w2.颜色值
: U3 M8 N1 l" h7 Z, l% c( c
0 R. w% ^1 l' J# N5 f颜色值可以用RGB值写,例如:+ w/ m1 l8 h* t9 v; Y& b
. {: C+ ~; ^: O' I6 U- i
5 S# B( v/ |! f" _3 E4 s
,也可以用十六进制写,就象上面例子) N8 |. r, p! L4 m
0 I3 n3 M7 A- d& I5 b( a
2 @9 y s4 V, L. ?
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
! U; m! B( I9 L' c7 s
6 p$ Z! {9 n3 w& p/ ^3.定义字体) F N% @) P3 H' O# F6 L$ q0 ^1 S2 Q
web标准推荐如下字体定义方法( m( p2 D" E: R; O
- ^% t4 q3 B- L( I3 L
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
0 N! o1 D+ W$ e. n0 p; }& [字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
9 z4 L' U g( S- J: MLucida Grande字体适合Mac OS X; 5 N8 G3 l3 A* t; I, x: s
Verdana字体适合所有的Windows系统; - D4 [+ {9 [" }! c
Lucida适合UNIX用户
/ `: P; _+ U9 t9 K/ ^"宋体"适合中文简体用户; & p! |/ q; y6 ~+ d5 c% u
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用; u# U- Q7 L1 w; v, b
1 a: G+ p8 ?8 M9 |8 U- Q7 W
4.群选择器
: p& b2 ~- {: m8 ]3 [8 S% @: w/ D7 [) S! M v
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
7 E8 i* W. ~5 Y0 X+ A _3 u. ?8 F5 _0 u' U$ U
p, td, li { font-size : 12px ; } % u! Y% k4 b( `! j* u
就是给li下面的子元素strong定义一个斜体不加粗的样式
$ h7 @- j7 J" N& ]" A" ?& U9 O. `1 G" F9 ?
6.id选择器
# ^; y5 A0 y* y7 R: O
7 Q* m" n% z2 l4 |# K2 u, T用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
$ m8 S4 ]8 b7 X4 }/ ~; n( e7 S
* ]2 M) @0 ^- s6 m
. O$ l, Q3 d* F6 w' P) Z然后在样式表里这样定义:: l! J+ S* g5 q- k+ s
6 m: a, f. a! k" Y# u2 z
! t. f9 R( O/ u1 j5 i# h#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
0 P: ]8 J7 m. A" [其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
+ i, v% D+ S# O2 j
" L! f k4 Y& e$ Iid选择器也同样支持派生,例如:
1 W3 Z' f9 Q; ?) J/ b( ^& U#menubar p { text-align : right; margin-top : 10px; } 9 m- G+ c2 a5 Z7 |" o
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。5 W, I" e! M" e* P9 _% U2 }
. h" g f1 d- I3 h$ ^
6.类别选择器
{* C* t" b( y# o1 z3 r9 V3 [# ]2 N' i" t
在CSS里用一个点开头表示类别选择器定义,例如:) b7 p, K5 F: \3 s% i: j6 d
.14px {color : #f60 ;font-size:14px ;} % F, n; R% F8 {: j& r0 a6 y
% K4 G, u, T% A1 Z. W: \" X
在页面中,用class="类别名"的方法调用:# J$ G" } J' ~2 B% U, {, g
<span class="14px">14px大小的字体</span> ! k/ R: u3 ` u! z9 d2 Y2 y1 t
" k/ m/ K. c& |; `( ~+ p这个方法比较简单灵活,可以随时根据页面需要新建和删除。6 {( k# H$ W2 n$ M, I0 g
* I+ [# I" i) C9 i3 b
7.定义链接的样式
8 K5 D6 ]2 b& w) X% B6 e4 @7 h/ b: gCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:: y( H# C9 R) @" h9 e R. v# Z
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
( W# I1 M" R+ z8 F, z- N% Oa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
& t7 A2 I% j3 x* ka:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}2 s0 V9 w Q! e8 P
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 3 g" U" h+ `' F' W2 ^6 z6 ^
2 O+ ?" d$ I$ r7 V! _* W以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|