|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
) m4 B) Y: s$ P |+ w2 _+ N- |. _' k, S1 C# j
1.基本语法规范9 `% p5 {6 p: x7 `4 L
分析一个典型CSS的语句:
: V0 K' l$ ~3 ?9 up {COLOR:#FF0000;BACKGROUND:#FFFFFF}
6 `( m( z" o" R其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
# V4 o$ s9 R5 a, C4 |) s+ q样式声明写在一对大括号"{}"中; 4 V4 }0 U( D' g) w4 K
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; & y n4 v+ I+ h8 [* F" ^
"#FF0000"和"#FFFFFF"是属性的值(value)。
% X0 F7 A- \$ o+ _0 A: b0 b e1 i+ y3 e2 h4 `
2.颜色值
; i" Y" l3 p, K) l. k8 f( }! f" M$ w$ j
颜色值可以用RGB值写,例如: {1 ^5 c3 W9 { b6 k+ _
5 r" p! I6 L, m+ d$ E
) C8 Y0 J; i0 T% C7 G. z,也可以用十六进制写,就象上面例子5 \& s. Z2 ?9 z# o( w( L: W
' M; w+ c& I' h" r. t4 w1 i2 ?: R% b1 k; O. H) |5 p7 Z8 v- X
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
: c/ e) r% D2 n/ B$ |
% i p/ R, B; L, x8 K3.定义字体3 X3 s# c9 J$ q+ O5 F
web标准推荐如下字体定义方法
. u" s* }! e2 \& B
: [9 n- t- s; E) Y" t, B0 qbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
. F$ p3 e& `, q7 k% w字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 3 q3 j1 ]4 M! s' q0 ]5 |
Lucida Grande字体适合Mac OS X;
: t7 [ V( U9 E. U* AVerdana字体适合所有的Windows系统; ( N1 x! L! r: ?& O3 W! c; n
Lucida适合UNIX用户
+ i8 K7 @+ B3 l9 n) R/ S9 c5 O' Y"宋体"适合中文简体用户;
4 w7 V1 x! B% V7 d, X* E8 O" |如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
$ s: N! J1 Q5 F5 V( W! n3 Q4 j g( R1 b0 J+ B1 ^5 h
4.群选择器$ Y7 h- N- i, n3 m
9 K# [4 o0 W) ~. o4 g* ?/ L2 B
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
0 O4 J# a/ E6 A) ]+ t! e! o- j
1 |% Y$ x, a0 b" I2 j& E4 D p, td, li { font-size : 12px ; }
+ K8 s' j* t8 n, q4 z就是给li下面的子元素strong定义一个斜体不加粗的样式: `7 D2 t' B& l2 a; C0 x
# J- Q5 D' v5 h o2 p% H8 ~
6.id选择器0 l% ~! V3 I- v. ~6 j& }
9 b( l. m* N2 A) }用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
: z+ K7 _1 R* N" J
' q0 G A1 J/ a. b+ E8 a7 h2 e% v$ j% V' C% c. _1 k5 S
然后在样式表里这样定义:! t- b4 [: j2 o( C. E: g8 S
0 n1 b" B Q; ^ K* U/ N# l& t. m: v
8 i7 \. m$ S" |+ W
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
2 c& A& s/ |# `6 T2 W其中"menubar"是你自己定义的id名称。注意在前面加"#"号。0 g0 i' | b: D4 X7 |+ ?4 ^
: \- Z" y1 t4 A( v6 q. T; t6 ^0 M; t
id选择器也同样支持派生,例如:
1 A; t( W9 E( q2 g( G#menubar p { text-align : right; margin-top : 10px; } / }3 s+ l/ N0 } C S: j
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。/ O4 O! ? I2 R: H0 s4 Q9 F
. g/ Z3 E" @: K; @6 h8 U
6.类别选择器7 Z8 K9 S) l8 w3 n H! Z
/ m1 m3 a/ C' n3 W! M: T
在CSS里用一个点开头表示类别选择器定义,例如:" |. P6 ]0 l0 @. c
.14px {color : #f60 ;font-size:14px ;} 8 z+ R" ?- J' `& j
6 ^) f8 T8 j9 l X0 p- k; H- S
在页面中,用class="类别名"的方法调用:: x2 I, J/ H/ k; m
<span class="14px">14px大小的字体</span>
+ D, i/ d* }2 Z0 i6 f2 D; V. c# k+ e. `( m0 E
这个方法比较简单灵活,可以随时根据页面需要新建和删除。4 E' G- V" d: Z+ V
. |8 n7 o! [' {/ \7.定义链接的样式
5 v$ P! ?% F& C3 vCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
, m' [9 P' t9 h. V+ |$ \* n2 X7 E9 Aa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}/ s. z$ z( H' `% y8 b% W2 Y
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}" S9 H7 Z4 R s" D* S# [
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}: |! z6 v, b$ |1 h3 j, F
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 1 n) S) Q3 m: ~1 U. _( d, s' n
! K- c+ m' @% F* _
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|