|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。; c& X2 V w0 S7 x
) C1 s1 {, O( l* b2 R" i- Z, z' F' E' w
1.基本语法规范
& g9 d. D8 F! O) d, ]3 c9 F分析一个典型CSS的语句:, ~1 a2 K% D1 P; g$ [
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
$ E( E' E3 m+ G2 R, D- E5 a其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; / B) b9 V, e; T! z& g0 w1 V0 m% z6 t
样式声明写在一对大括号"{}"中;
5 a% I: J9 D% A6 GCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
; _0 G! t4 {( M+ j% G"#FF0000"和"#FFFFFF"是属性的值(value)。/ J0 N8 n+ j' S# a4 Y' {
/ m3 ` x ^- m, H# M! a3 _0 e, E2.颜色值
4 K }% z: F2 Z0 G% Q' ]1 U1 A/ F
颜色值可以用RGB值写,例如:- W% ^. R0 k6 R# I& D+ ?
6 l! v3 L x4 {0 G3 \' a* y# k7 {5 a5 y5 W$ L' ~
,也可以用十六进制写,就象上面例子
, I. k8 W4 {7 C2 {1 U; D
L3 s5 W$ ~; Z6 \( n U/ ^, H) p: t
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。 B5 F) p [; e6 l" E, c
6 C& e" |* T7 {' |3 ^ X$ S% p
3.定义字体8 v1 G2 F- Q1 _6 G
web标准推荐如下字体定义方法" J, W" w! i9 S* {5 z. i8 y
, p9 [9 O3 B# f6 [% ^body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } & m1 n, u* f: I# w: E. ~/ p
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; + W' k- w! B5 Y0 z! K% j {& y% i. H1 q
Lucida Grande字体适合Mac OS X;
. h8 l, K* n$ h. v' X9 J kVerdana字体适合所有的Windows系统;
6 q8 w K) o' q" r3 QLucida适合UNIX用户
9 Q9 e0 C" U- q4 C4 i0 |, q# v"宋体"适合中文简体用户; " h# ~9 l* l v* j2 N
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;( c4 Z2 G8 R: q' |
* H3 J8 z; D! Y) t* c1 z
4.群选择器2 |7 ^8 U% Z3 S9 y @2 g d
* k1 x+ \9 i2 S& z6 \0 _当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
$ H* B5 a4 X g) T) }. R5 d
* E1 y9 `# ^, e: L( E9 V1 C2 i p, td, li { font-size : 12px ; } 7 O$ n& @$ j, ^# H2 @0 e1 b) w, T
就是给li下面的子元素strong定义一个斜体不加粗的样式# ^* Y* x' J* k
( I5 a9 Y. Q/ ]- u/ g
6.id选择器
5 p# d! H2 C; `: t7 P) t. Y' s$ I4 O' G6 {/ S2 u4 o p
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
" o8 S! u6 w* ?8 |7 }- C% w6 C8 a6 A; h% Q3 F
4 ]0 E6 R" [, U. `' w然后在样式表里这样定义:
' Q6 v4 k) t+ ~( ~3 S5 B/ O) E# a2 }1 [. E" W* i
7 c" ^5 N, s# t" v) i+ l8 W" u#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} I; C+ V& t( G( C3 ?
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
0 i3 q' Q+ u( @7 }6 n
/ w* z% R. q9 z. B2 y6 p- t& U7 T) pid选择器也同样支持派生,例如:
& X8 v$ _( `. i y$ b#menubar p { text-align : right; margin-top : 10px; } . Z- e$ F5 O9 Y
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。 h. R- U' J# j, W8 K. O {
5 {* U6 U( Q) H. Q" i# L+ L1 f6.类别选择器; f4 S8 b# x& |5 T f9 L
7 w2 `1 j a+ a
在CSS里用一个点开头表示类别选择器定义,例如:" j- N% s' z. d+ I! Z9 c
.14px {color : #f60 ;font-size:14px ;}
6 Q0 {+ |, O5 x: [# x( T. T# n0 z% u% l7 g) c! A
在页面中,用class="类别名"的方法调用:
3 q4 L3 o2 v4 I* A% M, O<span class="14px">14px大小的字体</span> 9 f$ o6 ]4 Y5 e$ ]1 A5 C, y, O
/ E9 J& P* b7 `) k( w这个方法比较简单灵活,可以随时根据页面需要新建和删除。( v( Y5 J2 Y9 x' y4 z, p' r0 z1 W
2 L& x- K! R4 I: Z7.定义链接的样式
5 i* ]3 Z0 \4 ^! F) FCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:3 q" f I# _1 h* o
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
2 b7 P3 U0 h$ G7 A( y3 Za:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}* G; `# y& n7 {7 [ b
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
}0 F0 s$ V( g2 M, o ba:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
& a$ _9 W, t' ~; M: |1 F7 f& E5 F: |7 H' ?; @: m1 W; K. G6 k
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|