|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。8 g# Q: _! e" L4 ?/ X2 v5 a
2 E! n, T# S9 O, s
1.基本语法规范
' I- E) T2 {$ Y, y* A* z分析一个典型CSS的语句:. M- d" I4 V L6 q# D4 V
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} $ S, K' I$ V( `( L/ e
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; & J, r8 A6 r9 R: o
样式声明写在一对大括号"{}"中;
* \5 p9 |6 ? W: e* U) x6 _0 HCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; & C, P8 \) `4 ~" _2 O; x
"#FF0000"和"#FFFFFF"是属性的值(value)。
! [, j9 T( b8 f! O
! E' ~2 {) ~& _5 w/ B6 ]+ O2.颜色值
+ _1 k: P- ^- M8 q W: s
+ h- x2 X7 Y X7 ?% x颜色值可以用RGB值写,例如:8 s% R( b; w6 {: J9 Y# G: q8 m
3 Z# K# P/ J: B9 C1 w E, T& Q$ _
/ c; W5 i+ ~; H% L,也可以用十六进制写,就象上面例子
( j2 ?7 y- Y( b/ g% \) j) ~
! C) p) M* @" y& g( j4 X6 z' j
d0 S6 b3 J7 k3 J如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。/ v3 h2 q! m* D: b
& E0 E) T3 d# c# Q6 Y: I1 u |' ?3.定义字体
3 l- Z- I2 u# R7 R2 C8 M' oweb标准推荐如下字体定义方法* B* s0 {" {/ I# w: a5 Z
: h. g: v. u$ e- P. [body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
% Z* n& L9 t O2 Q7 h字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
2 t5 `0 f6 j3 K/ r: }1 ^& l' jLucida Grande字体适合Mac OS X; 4 o/ l" t% q3 c7 W
Verdana字体适合所有的Windows系统;
! ]" C5 E5 i/ m" n1 r3 J! H1 d' \Lucida适合UNIX用户
7 x+ Q' _1 ]/ f! d" a"宋体"适合中文简体用户;
, J0 A& A" y; l7 Z R9 u0 V# R* m如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;* B! h* j0 Q: [5 W/ S
$ c- y! F0 @& L x l: ]: t0 s4.群选择器
3 e9 ?6 }4 D7 g% e7 E( d. A/ F2 l5 J/ T
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
3 I- _$ ?4 E+ h5 O9 M J% A3 R% m8 Z( X
p, td, li { font-size : 12px ; } + j6 w# d: u- j; S" A w
就是给li下面的子元素strong定义一个斜体不加粗的样式
; s1 p3 G6 U% Q4 d( f
6 F6 Q) }5 q1 v o6.id选择器9 ^& [% ?* R! L% m
0 s8 B6 S( Q; w9 G! m用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层) Q/ C4 |( D) c
$ e' E1 P0 K' k! f1 h) r1 m7 R5 S+ l9 t7 y+ \( B
然后在样式表里这样定义:3 g- i# K; n9 f# Z/ l2 M. G* |1 e [
* v3 G( j0 l$ D' L7 l( H7 G
; S, Z9 ^9 F6 b7 z: @1 m1 Q#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 1 r4 K+ r/ |7 n2 u- d- u ?
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。) d, T' f) d- e3 m+ Y5 R( Q
( C# V( c* i1 S* [' rid选择器也同样支持派生,例如:8 N Y! ? [. s& Z2 I
#menubar p { text-align : right; margin-top : 10px; }
. |0 p0 l! [7 f2 p. y$ N Y* p: d" }这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
6 x8 r4 H. B9 B' [
% U6 q0 B% {7 E$ A6.类别选择器3 z0 _3 W& Y0 v: ^. J
) q% g- \! A9 O! l3 D2 Y在CSS里用一个点开头表示类别选择器定义,例如:7 z7 L" I5 @) `8 W( A8 a% n
.14px {color : #f60 ;font-size:14px ;} : m- }) F1 t+ M _$ L- y
$ r# |# r" B' x; j* O1 ~ n
在页面中,用class="类别名"的方法调用:
/ e# R8 c) U: u/ y4 t<span class="14px">14px大小的字体</span>
% A4 x1 h ]7 w4 `) P# u5 J* i# x7 r' X8 X
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
% k# u& q7 k. Q; z2 z. K& ^
, t X+ L( W/ f7.定义链接的样式
% k u% |( Y; @" P9 @" \! oCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:4 f2 M& O$ S/ A) S t1 z6 _( C
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
3 Z* [; n. h `" u! h [+ W( Fa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
! t# I& Q% `8 Ha:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}1 c1 x" N. w2 F: W
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 1 ^/ a8 y h) H
3 {: M# ^/ l! k" [$ @
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|