|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。$ `. s$ U% E" h* j/ d9 H7 ^
# }* c7 {8 Z- J3 p' \- K, V
1.基本语法规范" [7 K4 L. R- A7 L1 @3 d" J3 `1 @* p
分析一个典型CSS的语句:
: w4 ^6 @$ r9 cp {COLOR:#FF0000;BACKGROUND:#FFFFFF} # Y7 }! t( O) h. p
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
* D" ^4 x5 @" b F5 I2 t9 V样式声明写在一对大括号"{}"中;
: M" U: B# n! e- {1 T: SCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; }4 B* h- h4 _, S) L* v! [
"#FF0000"和"#FFFFFF"是属性的值(value)。4 \ U* u+ S! l, v/ C+ p$ u
- z+ W6 w# n4 ?1 P3 p2 u2.颜色值$ @2 i. l* @% p1 F1 c
p2 f0 g2 s4 f* x- O0 W$ Z, X q7 W
颜色值可以用RGB值写,例如:
. l4 j- _2 L5 m5 V: k1 P [ E! @- P+ m+ B
: c9 d1 i) A' s& P$ y* p6 ^,也可以用十六进制写,就象上面例子
1 V. j) `7 t6 Z8 g, f0 J" g+ [' J8 U$ i, q
1 }# K$ y/ f) N如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。. @* q+ v/ `5 V& u
4 L. J8 ^. `6 Q/ e( h9 h
3.定义字体& K8 S/ U: t. m8 w9 ^' |
web标准推荐如下字体定义方法& ]7 a! P* a1 O
& }4 r- R% e) G2 Kbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
0 S4 g9 l0 m% l字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 5 C6 V: C3 h1 a! E! L3 I. M
Lucida Grande字体适合Mac OS X; / M0 h" C ^$ i: r0 U4 z V2 |
Verdana字体适合所有的Windows系统;
: o) M! u& x W {& \* YLucida适合UNIX用户
5 ?# A- m, e5 Z/ c"宋体"适合中文简体用户;
9 H' M) x/ C8 p: D+ c+ r. Z如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;" {2 Z* m: X- [+ Z+ p8 f/ N0 X3 E& \
8 r+ s$ T) J) x. u4 A6 B2 ]7 X4.群选择器 K6 R, V8 D! n- E5 A
$ `; u. h y }2 T9 h' `+ x当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
4 A9 H$ b d- @# U2 n& H: H9 y) V* W' \2 n' h& K$ H# n
p, td, li { font-size : 12px ; }
& s# H0 f( L+ |( x就是给li下面的子元素strong定义一个斜体不加粗的样式2 @9 K8 D% V& l' O( ~# L
' m2 d1 `. I$ h9 \( u5 m: ~9 g: z
6.id选择器1 d. ?5 e; n' n/ W4 O
7 `1 k6 f1 |. o7 H/ _: S H9 d
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层0 @. X1 h* j7 ?: U
( g& n" N' ?5 T
/ E$ C# {% }$ j7 a ^
然后在样式表里这样定义:
6 J e$ b3 y$ w; L
4 m% z# N" y% o9 F9 j, M! C9 [2 `0 ?( K; f/ J
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 1 A9 }; a1 C% e2 B; B: y$ y" h+ n
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。* K x0 Y4 u A. Q: H
" a, k/ i: |* B+ R9 K( Nid选择器也同样支持派生,例如:
: \9 L3 g" W: P- C5 d8 {#menubar p { text-align : right; margin-top : 10px; }
5 h& P" O, V5 _, N; @! P5 d; A这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
1 j) _- A6 z1 a: S
$ r6 _" ?0 e8 Z9 v6.类别选择器
5 @2 g" K) q% ? g# |! O* ?# ~0 L, j* K7 @4 u
在CSS里用一个点开头表示类别选择器定义,例如:
; `8 G4 s7 C$ `+ v.14px {color : #f60 ;font-size:14px ;} # x& P! ]5 l6 e7 P( R( X: o0 v$ q, f
: b/ x; [, O' J) m4 t' t' t在页面中,用class="类别名"的方法调用:
/ X. e- D+ v4 E6 L# F<span class="14px">14px大小的字体</span>
8 d7 F0 W# K3 P9 W/ H
5 f, c% S# k& H+ Z1 {% u" q这个方法比较简单灵活,可以随时根据页面需要新建和删除。4 }" O( N: T) w7 R& M8 g% q) [' _
y; ~* c; |% z1 F7.定义链接的样式
- x' O% U9 B# c) RCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
( Q: q% _; o# P9 P; Qa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}2 f& a2 D8 w' Y- t
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
1 |) n! O/ Y3 @- \a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
; o2 l( j2 c. K6 X+ la:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 5 d. N6 W( r) g% V& O
( ?6 @: S$ S( P7 V
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|