|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
, G _& W5 |7 L/ t$ s4 P1 T" m3 c6 Q+ X3 o. C G9 Z' e" a0 Y- P
1.基本语法规范
' \4 c @' W6 L8 A2 I分析一个典型CSS的语句:
, l+ @( T. D$ L. cp {COLOR:#FF0000;BACKGROUND:#FFFFFF} ?: l0 m9 |1 ]1 Q0 E2 d5 d
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 4 l: T" a3 }/ o0 i+ q
样式声明写在一对大括号"{}"中;
, B* N0 O$ `8 i4 G0 m( \# YCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
$ v% Z, r1 ^# X"#FF0000"和"#FFFFFF"是属性的值(value)。: {) Y! ?3 g6 F& O
4 o7 [1 D0 y2 U6 ?2.颜色值
# I3 z5 O' H. x1 G! h- S* l6 M7 ^; I
颜色值可以用RGB值写,例如:8 x2 H" u0 S5 T. t; J
8 o5 Q6 D8 v. V; z) I- K( _/ t) {
8 \. y% d; ~+ c0 p* o. X,也可以用十六进制写,就象上面例子0 @ F6 i! e- B4 n2 K) J8 E3 R: M
4 }6 e/ c9 I x9 {! r* k8 v' V% y/ H/ T+ m
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
/ x' l8 ]" ]- e4 \6 Q7 k$ l( j( Z4 C
3.定义字体# u. ^$ j; D! E- R- _& o/ a
web标准推荐如下字体定义方法
, D; }: N7 W# W) f! H- L" a
% z( v- G8 C# W4 F: @2 W# w# `8 U6 Ibody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 7 m( Q3 N; c R
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 7 u0 N& J7 m; K5 m- z( o
Lucida Grande字体适合Mac OS X; 6 J$ F2 m5 K a* }7 I
Verdana字体适合所有的Windows系统; 8 V) Z9 F! S+ M& X
Lucida适合UNIX用户
! {- k% |, t {$ Y r, z1 n"宋体"适合中文简体用户;
0 |3 _7 I# i+ M& |9 v4 u如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;5 F' a; K/ `# X/ _7 |+ s' M
$ F: A' J6 r" o, F/ D" r4 Q, U
4.群选择器5 B3 y4 j% _* f! w, a: A+ ]
& F/ q3 t2 c5 Q5 E8 {) m2 u C当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:1 {0 m; C7 l1 i
% Y- a! x, f# i' y# @
p, td, li { font-size : 12px ; } , ]* I- L3 [/ Q9 _+ g
就是给li下面的子元素strong定义一个斜体不加粗的样式
. g9 s8 c9 J( ]6 ]2 ?6 H, v3 K0 H4 v) E9 o. S% I6 L+ Q
6.id选择器& b# A# n# m5 _' C* W6 M& X
' f. E; Q5 ]0 |3 {. k+ ^: ~( A用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
8 J0 C8 o- ^8 t. `# Q1 E9 H# ?& q3 N, m# W9 x" }
$ d) D; j9 I, G$ z; r/ d
然后在样式表里这样定义:- `2 U- D/ i( m3 X
! R: N; A4 ]$ z4 g3 E1 w' [) e' E4 Z5 a
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
- V- D- ^6 k( q/ _6 I; A其中"menubar"是你自己定义的id名称。注意在前面加"#"号。* ~* h' L! e+ o) D; o, J
$ ?7 r, p9 [# c y
id选择器也同样支持派生,例如:
" U; p3 J' [' g0 {#menubar p { text-align : right; margin-top : 10px; } 8 v T( w2 o' y5 [5 J9 ~; s" H
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
$ {+ s4 ?5 ~4 o) i; @) c2 a# M1 E. k( Z% s# l, m0 G: p# \
6.类别选择器
9 M# h9 e, N$ y6 x* y4 Z$ v* g- x; p& s4 R( b/ A0 Q
在CSS里用一个点开头表示类别选择器定义,例如:: V: Z# |. z( L. @. }
.14px {color : #f60 ;font-size:14px ;}
2 c3 P* @- K+ X% I, A0 r0 u2 t0 i4 R6 k8 _9 i4 l
在页面中,用class="类别名"的方法调用:3 Q: e1 Q2 S7 V
<span class="14px">14px大小的字体</span>
# J% M2 [: m1 ? K# J
+ }; S" H# h ]+ M9 V9 ~8 Z这个方法比较简单灵活,可以随时根据页面需要新建和删除。
. d0 E9 |: i( D
. b4 h9 v8 u6 H8 K2 N- T3 K' z- K7.定义链接的样式% \+ k. G! _. h, I
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
! U. w( X; }' I( Na:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}* n8 e% W1 h) G& z+ X+ W* a, z
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}1 l+ t( ^4 C* Z: {3 ^4 t( f$ q
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
! x/ v3 B5 M% m7 u# i& z* V0 O; fa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
( }. Z, I* e" s% I, B8 B6 L' ?( w: X- v$ G- B
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|