|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。8 P2 V1 t+ \7 O/ R
# Q: a6 S& `7 c6 U& c; h- L1.基本语法规范
; _& c* [8 T1 d( d' F& X$ J6 ?分析一个典型CSS的语句:% _5 s2 E! M: Z) A
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} ' P) D! z0 N$ a4 s$ I( O
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; & r5 x. J% R" q% s5 @
样式声明写在一对大括号"{}"中;
+ y2 Y. i) x( j# L9 ]COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; : v$ b+ b4 t `+ X0 \9 Z
"#FF0000"和"#FFFFFF"是属性的值(value)。4 }6 S) ?# I; P2 [2 B' x2 F. d' G
4 | D( b3 }+ j* u5 `% _8 Z2.颜色值
O& b! R" C1 L, [/ g- D
! `6 j5 [. A) ^3 e' `0 h颜色值可以用RGB值写,例如:* }+ _# d7 |9 B
6 w) C9 ^: b% m i Y& F, Z4 T
$ y; S: T; _/ z2 L* W,也可以用十六进制写,就象上面例子 o4 i0 j: _1 h0 \4 o( w8 V& i
$ l$ N7 d3 s# a: x, n" y" X R
. _9 `# B0 O- F7 c/ U7 W6 f K) |
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
, A9 d9 n1 B! t& P. Y0 |3 W8 ?! e; ]( N. a0 Q u
3.定义字体0 Z0 e# s! j% {% [' D% m7 X0 A9 |
web标准推荐如下字体定义方法' v( \$ l L; j( q2 F5 y& _& x
: ~2 [" c2 h' z& d8 I! L
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
9 j, Z7 w9 o2 ]" L3 x; t9 ^字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
6 X) y8 l4 s5 K* ]( jLucida Grande字体适合Mac OS X; ! [. Y: K+ p+ g' J! {/ Z1 n0 R
Verdana字体适合所有的Windows系统;
8 W6 x0 E+ ^7 |7 c. |Lucida适合UNIX用户
3 f' u( @/ L# t5 T"宋体"适合中文简体用户;
/ _; S5 @) c# Z8 E0 N) f如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;2 @: C2 B! U9 d+ J
8 F6 |1 o) e+ I1 W/ L; r7 w% j& r
4.群选择器/ V! `* Q" F% Z* p. x2 k0 B, d
1 K3 D% W6 s* d当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:# z* \' y) L3 y* o$ ]/ A
" |- r m2 C$ p# j! J4 w) k6 Q
p, td, li { font-size : 12px ; }
/ X5 C* T) B- @/ m# P: |就是给li下面的子元素strong定义一个斜体不加粗的样式$ H& N0 H% e, P5 _) [# L
* w, K9 _6 c% A# q' B% Z& x& ^6.id选择器
/ `/ S/ \4 M0 h2 `3 z- ^; Y
3 T3 |' `0 K: }0 A' i用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
7 S4 Q" Y, s* s; C, [3 j3 c% u6 c( e! U
' k* j& e) R J: v5 M
然后在样式表里这样定义:4 t0 |% F {/ `0 m1 P& s2 ? ]
* b: F1 S% g, V; e: R3 N( {; x: x% a4 Y6 F: n& A# `( ~
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ) H# ]8 H/ g7 X$ _
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。. X3 T, r# w: X' v) c
. c! X# X$ [) ]- D5 q1 c7 N* l+ S/ hid选择器也同样支持派生,例如:: u/ F3 ?7 ?7 G W$ {1 i
#menubar p { text-align : right; margin-top : 10px; } # I) a) D j( J* {" \2 Q3 O
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
* s# y4 j. `0 Z6 M8 o! S
) t* e* V. \/ M3 @3 d# ?7 {6.类别选择器
7 n2 |% f& g# N7 c Q4 F2 d; h# O; r/ G* Q6 b0 m: h
在CSS里用一个点开头表示类别选择器定义,例如:
n* a* r0 H, ^5 ]# \$ I4 u+ b& ?.14px {color : #f60 ;font-size:14px ;}
8 l4 r R2 u2 p% G! ^- `& n% O- Z/ ^! |; g9 K2 ]+ g
在页面中,用class="类别名"的方法调用:7 C+ i4 v0 a o1 d
<span class="14px">14px大小的字体</span> " E6 X8 y+ \0 _
1 j& {# W7 W" V Y1 o这个方法比较简单灵活,可以随时根据页面需要新建和删除。
0 z/ \! t! m/ D3 k2 B* i, S2 @9 j s* A# ~; [2 W, a8 ~
7.定义链接的样式
- H5 {$ ?0 F& ` V2 h3 lCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
) t# M. }9 y: k. F& e# }4 o9 {a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
& H1 F ]$ u: x/ Y: S0 l+ C8 k4 w- G5 ]a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}. r. A: n. q. @* A
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 G" s/ r c, [3 l1 `8 G
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
" K7 _# l! |4 B m) \
. X! D/ v, h7 H7 M6 ^4 @以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|