|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
/ w$ Z& g, b6 T* ]3 Y# g/ {% T5 a3 h4 o r, d: s" X+ l; i
1.基本语法规范
$ t# [ R- q0 G8 V2 v( H分析一个典型CSS的语句:4 D2 M( t# w4 ]8 i) `9 H+ ^
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} 3 A! c J! n6 Z
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
6 e& r5 _& N) Z; U: z$ \样式声明写在一对大括号"{}"中;
- @8 a/ j5 u7 ]8 }" J# wCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
9 o( I$ t, ^* b"#FF0000"和"#FFFFFF"是属性的值(value)。' ^; A3 `% R0 U) W+ `) j3 {
' T4 A8 T" n- @5 ^# K x2.颜色值0 M" H1 ^( ~ P5 e
$ B' M# v- f' l6 M' ]
颜色值可以用RGB值写,例如:- N. v# |( a# A1 z+ i4 n% ^
* w5 u8 s4 D% r+ m; R6 n
, Y/ v6 U! b& S. j' l7 X1 [: r8 k8 X,也可以用十六进制写,就象上面例子/ z& v( n6 y* o% o
, D) l7 f2 V' z9 t6 F
; e; I: [9 S) K* [! ~9 t( S如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。5 e* J! j |. l7 R/ ]! e. C
# z# T l7 q8 J
3.定义字体; P0 l) N1 B# L% q- g) W% N
web标准推荐如下字体定义方法
" x/ a( J6 V+ V, [4 m" A' G( ? y
9 w0 ~, V* V: M3 u/ @" ?body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 1 P* x r, r7 M' w
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; : N8 b5 i; }+ U" h5 {
Lucida Grande字体适合Mac OS X; . d/ Q+ t7 u7 ]. [2 u; E2 b
Verdana字体适合所有的Windows系统;
4 i! ?4 l( b$ ^Lucida适合UNIX用户
7 |* y5 F. n3 O+ ]6 J. |"宋体"适合中文简体用户; 0 y0 |$ [/ i: K, J" Q6 t
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;* |+ O; T g) x. H
, ~$ d$ V, l0 F0 S% s" A
4.群选择器- w. T% J' x/ O3 S% r/ r/ y
2 A- Y) E& @, Z9 [& n8 ?7 A- H4 j6 p
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:! X4 p" m6 i- ]0 w, W y
" H+ k7 D/ q c4 B$ y p, td, li { font-size : 12px ; } 7 e# O/ a! X; e1 g) R8 d( d) D3 G2 Y
就是给li下面的子元素strong定义一个斜体不加粗的样式
: R) q4 C& y# r' |1 a# p) Y
! ]' B2 k+ f& D/ R6.id选择器
& G$ j) x4 Z4 S& C& u% Q
# D% S; i6 x6 j1 z0 A | k& v用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
$ S T: ~, K! e7 m2 E# V& K/ ~3 l" f) y4 n! G
% q0 s4 P: \* V3 z* v' ]然后在样式表里这样定义:
6 V7 x; D6 G; W/ W% V9 T) ?2 A* M3 ]8 z% O) q. C1 Q& Z
1 Y/ \% e H/ p3 x+ s#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 8 Y9 R5 h. A/ @3 P9 x% ~ H
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
. T9 l& f2 t, s$ v
4 {6 d6 e Q P9 s, xid选择器也同样支持派生,例如:
- `- U2 P; w; ?/ K" e/ N#menubar p { text-align : right; margin-top : 10px; } & A! N# N5 \ ^# c% q
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。4 |% l* a/ ~( d0 a4 J
( Q0 Z7 T0 { y; d5 U1 q( n+ v+ Y6.类别选择器6 s7 [7 m2 ^- s8 {. t; k( ?
# a' J$ z; }$ p3 n/ ^! {! f
在CSS里用一个点开头表示类别选择器定义,例如:" H' E, G& W/ u
.14px {color : #f60 ;font-size:14px ;}
0 E2 b# Q. j1 G! X8 ]% H p& m* v% D$ X
在页面中,用class="类别名"的方法调用:
/ B8 m3 a) r0 y7 m- J; L0 T<span class="14px">14px大小的字体</span> 0 P! G! l( J1 u2 E
9 {3 I" Y0 D1 u9 |3 |! M这个方法比较简单灵活,可以随时根据页面需要新建和删除。1 `0 I, R! r. ~9 I0 N
. z) |! X5 N1 V, E7.定义链接的样式) x; b+ Z1 t: a6 ]/ k) y# _5 {' K
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:3 p# {; n c9 a2 N& N$ ]+ X
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}) ]9 h+ q; e+ v) o' p
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
1 E0 \; ]# c6 s6 o. ]$ j' I( w# Ta:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
' z8 R5 [7 b+ W' X2 wa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
5 \5 Y; [, Z1 P, p" L* m, p* K( V# f g( @
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|