|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。" C3 B( @& b3 k# \, c* `1 S
5 n' \3 l$ P \1.基本语法规范
* r2 v1 p9 {9 u" F0 f" W: v3 I分析一个典型CSS的语句:
t% z+ h9 r) Y5 L6 up {COLOR:#FF0000;BACKGROUND:#FFFFFF} . q4 I; x3 k5 ]( I) z: B
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
4 ~$ O g. P! J3 }. p样式声明写在一对大括号"{}"中; a7 U* S4 U- X, @# l3 K4 ^5 k; v
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
* }7 G2 L& I1 |) v8 J"#FF0000"和"#FFFFFF"是属性的值(value)。7 Z6 \* O- f7 d7 t+ @7 ` @. f
: l3 s3 R1 ]9 e
2.颜色值
X; j' y. r$ o m! n9 F% g' q8 X' S8 K0 n$ C1 i! S# Z4 ^* d
颜色值可以用RGB值写,例如:, d: a3 Z" g- B: B' N8 u4 a. k- c5 y
0 l1 G1 a& n( C
% z! c) K. C+ K* \9 n,也可以用十六进制写,就象上面例子
& y: t$ t9 w& D' d
, {; r F. w: \8 Y X$ Q' @) h, h; j. U# t( w G
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。, [: e0 r3 R5 U, _
# F2 A2 Y: V# ~8 ?8 n7 A3.定义字体0 b0 \$ h* G s- s; ?1 t
web标准推荐如下字体定义方法
9 T/ v `' Y0 f& k7 g1 U
" b5 Z8 \: h9 k9 J8 s$ abody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 8 B0 y# V+ f( I" k* C
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; - c$ r2 I1 G; t% F
Lucida Grande字体适合Mac OS X; v% N8 p% |: M
Verdana字体适合所有的Windows系统;
+ f, s+ F8 u) e9 _3 k5 ULucida适合UNIX用户
# s8 y1 D% t, l5 ]% S5 `"宋体"适合中文简体用户;
' e% l# `3 m# ]; ]. |如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
9 `; K. p) h- z9 W9 \" g, E# u+ S. a( @9 Y- o! M5 h Y
4.群选择器
- w% ?' M" o9 H0 E, i# H2 f% X+ z% W* O# s$ b+ a
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:1 r- z8 f$ P0 U+ `5 w( N
5 r- o4 Q# u0 J1 u# Y6 ?
p, td, li { font-size : 12px ; } - n* s/ p* O& s) ?+ v
就是给li下面的子元素strong定义一个斜体不加粗的样式8 D6 A; G7 n7 ?- f; C3 N
* g1 [$ N, m& E2 r/ H+ `6 c/ K1 r$ Y6.id选择器
- p0 N& i' q/ s, ^' C$ t
4 [. ^& i( @$ v* |' |用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
0 o2 Z. K+ c* O8 e9 e; N5 X5 E; m8 l8 w' W% e
* Y, s I* s2 N然后在样式表里这样定义:
/ L8 b% |' f, V+ T/ @# J. I; ^, }) w5 h! h
5 b" U/ m# P/ J9 @
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} # O; u; [0 s4 v9 X1 B
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。2 i6 {! ]. E+ ~2 K* d5 B- }% ^
4 y5 f9 _4 D8 V5 G# u+ _( `id选择器也同样支持派生,例如:; R& z3 ^3 `' V5 N
#menubar p { text-align : right; margin-top : 10px; }
: Q" }& N! Y# O: D8 e: z. s这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
: [' j o+ h5 Z: l2 }* f" ]' `
* T6 P. ~/ p9 i" f3 [! o& m6.类别选择器
$ k4 |4 M6 P' U3 I( L2 Q8 G4 j x% \) x: Q
在CSS里用一个点开头表示类别选择器定义,例如:
( P' y0 ~2 Q, Q.14px {color : #f60 ;font-size:14px ;} 3 \. _- i5 P, U7 l' o; q! [& N
& o, u7 t0 o! `& C/ g. _& h |在页面中,用class="类别名"的方法调用:
! j; l- N# I# ?; Z; q9 c/ [<span class="14px">14px大小的字体</span> 3 _0 D( g7 W; p. r. P
* ]+ m. r% g- A' C" b3 a这个方法比较简单灵活,可以随时根据页面需要新建和删除。
' p: `3 ?& L" h! w2 ?' K' R. \
+ s% Y0 { W8 o/ ]$ V5 k7.定义链接的样式: \5 s! H; Z1 k4 V: ~
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:4 ]7 L: a! d; O
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
" _, _1 b# N' Y+ Ta:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
4 c- v# ^! q, E" v H' V- `) sa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 H9 t4 l H+ d5 L$ n
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
! S4 n% I% O& n/ p* I
3 b I; \1 N: r) d j; Z: `以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|