|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
+ c- }) U! y$ p" x& l: N
7 c4 A9 |% G( Z) T, {. B1.基本语法规范/ X& h+ g* a- K
分析一个典型CSS的语句:# a1 D. U; d1 n5 f% L+ F# L
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
1 u4 h( O0 X5 H, [$ ^+ c其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
2 \9 i j$ `- B8 r$ u3 I. N样式声明写在一对大括号"{}"中;
: U/ k( Q- o/ s, n; jCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
& X5 f" v! a P4 j"#FF0000"和"#FFFFFF"是属性的值(value)。! C0 U' c9 s! j
" K6 z7 L4 t1 O1 n, b0 T
2.颜色值
+ U' W0 ^ U6 T( A& N6 V. u& {6 e& K& ?5 a& C8 U* i! U
颜色值可以用RGB值写,例如:) g7 x: z9 G& }: W
! `/ o4 P/ V" X. p
3 i0 }! T4 n+ a# },也可以用十六进制写,就象上面例子
% @4 u, r% p) f. x
# y1 L1 R( ^) G2 F8 {: y, m! S) G/ A, v( P1 Q2 R1 z6 p5 S
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
R9 @' `8 x7 c! E- {- o1 z* S+ { u9 W
3.定义字体
6 ~: l& u' ]: K( p# m! Nweb标准推荐如下字体定义方法
. ]1 R, r5 V2 B/ T9 Y' T
1 D1 O$ n4 G7 @body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 8 J h6 v0 c. c
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 0 j9 R0 e* t6 l& B- T; g) L
Lucida Grande字体适合Mac OS X;
) ]0 T1 [% \0 g" v' p6 {Verdana字体适合所有的Windows系统; ' P4 x' f7 `, i. G2 g2 q8 O
Lucida适合UNIX用户
9 O: k: O/ ^7 S* D) \0 s" R"宋体"适合中文简体用户;
1 N/ \* p3 I/ j, E4 V+ f. k$ i( o如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;$ ^+ t: H9 S7 _# a: @, d
' ]5 Y7 I( J* [0 r) D4.群选择器+ r- Y9 `& E1 b1 c& @5 [
, r; o2 o1 e$ D$ ^
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
( {: Y7 J9 ]0 q% `% V: J& C9 R" Q- W2 U: E% G* P
p, td, li { font-size : 12px ; } 2 \9 ^2 v- T+ D) A* I5 T5 ~
就是给li下面的子元素strong定义一个斜体不加粗的样式, v# q [3 a$ z) E
$ k# @. S. \+ j7 {! Z6.id选择器; F9 E: M# O9 f5 l
% z% V9 ^5 N( e
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
: n9 S: V' r. Q% E$ Y5 Q2 s1 F d2 ?1 e
/ z% O5 n% y: O Z( ]& Z p
然后在样式表里这样定义:: k: {5 a5 c! l
2 ?7 H9 l, u5 q, G5 p3 n8 j A6 Z) m2 i/ c! @$ m) R$ H- Q
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} + I( h- f- E8 j) Z5 ]
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。6 [( `9 D9 g# o% r0 W L
4 M* Q# D6 y( H9 Mid选择器也同样支持派生,例如:, c- K2 k! W1 L' V* i' E8 X9 a
#menubar p { text-align : right; margin-top : 10px; }
6 a5 C) B& j3 V这个方法主要用来定义层和那些比较复杂,有多个派生的元素。% ` L/ e: C7 d+ J1 P
& T2 Z1 E6 m# O% i v* b! N4 t
6.类别选择器
6 L }: M. H$ U" D2 f* \* `2 O0 U
在CSS里用一个点开头表示类别选择器定义,例如:
# O3 I0 M7 A: s; w0 G) Z$ w5 n.14px {color : #f60 ;font-size:14px ;}
% H6 `, R% J6 B9 W, d4 T' Q9 u4 o+ H, I
在页面中,用class="类别名"的方法调用:/ P7 t: M; e$ t5 M# u) |
<span class="14px">14px大小的字体</span>
9 i1 v( J+ m% _
+ e, V5 H1 j; i( U2 }3 \; ?% Z这个方法比较简单灵活,可以随时根据页面需要新建和删除。
3 j+ S8 k5 M- g6 \& T7 X& g6 v
7 q& V/ {; g a6 v3 x7.定义链接的样式
; K) `( G* r( p, @( LCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:3 S2 `: |5 F* N8 [7 L/ v* J, V9 |
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
h8 B/ M2 P3 V! _. `% Da:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
6 b! g% C$ j+ Wa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}) b3 e" S& j) k9 J1 t: ]/ v. H' z
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 9 `4 X- f9 C) z2 r; N! a
# q, D8 [# b! H% i6 [; n以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|