|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。3 r! @# G! M: E& G" h: Y# ?# C
3 e% v" Q- S! K* z- V- Z& p1.基本语法规范+ S7 ]5 Z$ j# M3 w7 [0 O+ k
分析一个典型CSS的语句:
8 _+ |' l& T" z( `' Rp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
; f) \. b* ]6 }/ Y其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
* o3 T0 @/ K) @样式声明写在一对大括号"{}"中;
; k- {- P, K' ~' vCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
4 [& a8 h( N3 K. H+ l+ z"#FF0000"和"#FFFFFF"是属性的值(value)。
+ d& r" h+ O* N. E& R5 l% f; H" k2 p; |! ^! w5 e$ e: P2 J
2.颜色值
5 j4 L R7 \6 R. G( G- f- p) ^
颜色值可以用RGB值写,例如:7 Z0 p- G, p- B1 b$ w3 d m0 S
9 V1 @8 z0 R% w
F5 l. c- b. p- [,也可以用十六进制写,就象上面例子
' A. u! V$ r8 M/ P9 Q
8 Z' S, |# I2 B+ A, i; D( T
! w7 F- q( j8 f( {6 f2 a) L如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。' ]% U* ~- p+ s9 L# y7 M& E
" n: h7 S* _ f( P2 H& E" @0 T. P
3.定义字体. P/ L* w. |9 M; M+ X% j
web标准推荐如下字体定义方法$ e, n- K9 S$ L% c8 U; Y2 _
$ Z. c$ z3 \, E$ H
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } * ]: o @* T! `4 i1 j6 I2 e3 T h. T
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ! s9 Y# k8 H U* ^
Lucida Grande字体适合Mac OS X;
N7 @5 T, B; P7 YVerdana字体适合所有的Windows系统;
; F: ~) [: r. }" Q0 ~2 vLucida适合UNIX用户 2 g* R) D9 C! n6 f
"宋体"适合中文简体用户; 6 h1 c. M, ?1 k) l# ~3 Q
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
& f' |% `2 ~) v9 W: y B/ O- u/ Q6 r# K5 X5 S' S' T& i
4.群选择器) D# q3 M& r4 s' p$ K! l
( ?, `: r7 z* ]) {当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:6 N& z! \* m0 [4 |( {+ \
% h2 ^* w8 ?$ z4 m) C3 a( H) ] p, td, li { font-size : 12px ; } : {) d3 I3 |' T0 D1 J% \
就是给li下面的子元素strong定义一个斜体不加粗的样式
6 \9 X5 R; ~# J( [5 t. D- [
3 E" {* \5 i" t4 v, i" v6.id选择器 x8 g6 ?2 v; f
0 R& R9 |6 B+ J$ f) ]1 Q' p4 }用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层( ^$ }" t' ] O Z8 l3 N" W
+ }. {/ M2 _$ j; l6 i$ h3 w4 |
7 `5 `) o R/ P, E7 C; K然后在样式表里这样定义:
7 Z4 S7 S. A+ a$ e' @8 `+ [0 i0 _+ H. l. ]
% R6 I4 e; k/ ]8 b* u0 Y7 e# _: l) B
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} - |9 O, @3 c; M c8 [
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。 l9 j, K6 K+ \6 @+ M7 h6 N
5 b( U1 p" ~ L- y5 I: Z4 d& M) j% H
id选择器也同样支持派生,例如:
0 V- B3 E, F5 b7 g2 p, y#menubar p { text-align : right; margin-top : 10px; } " ?8 o+ p/ j9 r! v/ o' @& g- b' Y. e# c
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
+ }8 Y: f0 i0 z8 M W+ _9 j( U4 A" h4 B7 S6 z% t" h
6.类别选择器/ m# O' r# H; }+ S# E3 k
. J- R5 ?( i! A" J3 H! H3 i
在CSS里用一个点开头表示类别选择器定义,例如:
$ ~5 E }2 b" B/ N5 f.14px {color : #f60 ;font-size:14px ;} 2 b2 H) I2 L$ D5 A- I1 Z3 I
$ P. { H* d: k- P
在页面中,用class="类别名"的方法调用:
" v* b6 F6 T! A3 z, |! z<span class="14px">14px大小的字体</span> 2 r' \8 J# e! v/ W- r
e+ U3 E' _: E5 T3 Q
这个方法比较简单灵活,可以随时根据页面需要新建和删除。. y, {) N" \8 p- M; H7 b; d, [
. `5 V0 e' f' M7 ?; l! U# h- u7.定义链接的样式
: c& o! l1 I3 v2 c2 fCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:; Y( @& g2 k' ]4 b% X& ]
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}" e V$ X) X" [
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
( e1 r$ s. U& u6 J+ wa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}* {, P& j ^1 n* Y# ^9 Q& u
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
5 r2 m8 D& n" O8 ^9 m( v4 [9 z1 w+ }# ~
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|