|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
( [$ S9 U# N2 W2 R2 }# Q* m
9 ?$ ~0 I/ P" b9 @% ?1 D* a) ]( L9 h* }1.基本语法规范- H0 y4 }% S8 ^% c
分析一个典型CSS的语句:
* C0 C& O& t- A, y( T) bp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
. ?* y' B% D, \3 P3 x其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 2 a! e/ k1 r% N* M* J1 _" k
样式声明写在一对大括号"{}"中; / t0 ^9 N5 i/ |9 L: r
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
3 N# Z# \% Y/ J: h8 w$ a4 `"#FF0000"和"#FFFFFF"是属性的值(value)。
1 m" S- F; ~! d' a) |# H# c
7 F' A* S2 D9 I) J2.颜色值, g4 k8 d* u& U, H6 s: V1 a
3 i! R/ X) d# s% l5 f- ?8 S8 H/ _
颜色值可以用RGB值写,例如:! i- H% G+ s6 p7 d- X: ~ T" i/ L2 {
* o2 w# e% v- ~& @1 R
* O9 G# U& O* U( X,也可以用十六进制写,就象上面例子/ }: {) _; y9 w+ t0 ~6 C. w
& q0 U E/ a& `- P' K1 \
$ \# ] I+ ^( i/ N如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。9 s0 U- x6 A4 Q* v# u6 r+ X
P& `$ `% S, }6 O
3.定义字体6 V5 u2 a9 t8 `+ ~; D
web标准推荐如下字体定义方法" Z0 X6 D7 M+ ^3 c( |
/ S4 b: O r, |1 V
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 7 d/ a- L8 |3 A% ]. C2 J
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; a& `3 q6 A5 W9 H- ~( B5 P$ f
Lucida Grande字体适合Mac OS X; ' X; d7 s/ p# K) @
Verdana字体适合所有的Windows系统;
+ M9 h! V1 z$ @: g9 |Lucida适合UNIX用户
1 \0 ?5 C# k6 h8 T) K; |"宋体"适合中文简体用户;
- ]2 O: L8 T n如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;1 [2 i4 e6 Q# S% N T* ?4 P
2 I2 a: B4 o8 P9 k: I3 j8 x4.群选择器
* `: S' P3 U% F+ i- m7 ~. ?, J( w7 F6 V m
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:$ C" M/ O7 M/ y5 b8 U
3 v$ T: K7 _1 A$ q7 s% o p, td, li { font-size : 12px ; } ; D: D' T/ S, R- H, G
就是给li下面的子元素strong定义一个斜体不加粗的样式
; u L- W8 w. B* O
; @' f+ J0 M# T6.id选择器
% R+ _" U5 w+ V( H* Y) T1 z
8 f; r, i6 d5 ^' t$ C2 x( N用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层/ V3 W5 b# t$ o2 q1 n M
- C) l& q9 \+ H% T1 E" h, U9 a7 n0 v/ v0 P" v+ O0 b+ U
然后在样式表里这样定义:
9 E* ]* W' w8 t
' S) ]; v$ j9 R6 |9 v. I2 k& l# z5 P) n/ z4 t6 a$ q
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
: t" `. c7 \! w# ] ~其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
: K1 M# w5 }3 c5 R% P! t
$ g# |8 y+ p9 D% o- @: Uid选择器也同样支持派生,例如: Z/ H+ G) M) t) W6 Z
#menubar p { text-align : right; margin-top : 10px; } , n3 K' h) p% m2 y' _
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。6 M5 M. G" l# _. |( Q
8 x+ ?" ?; P. O8 [9 v, G
6.类别选择器7 _9 X( t# v! q: }
6 E g- J5 W( Z6 w/ S E6 w
在CSS里用一个点开头表示类别选择器定义,例如:
; V* O4 S3 l0 e) y.14px {color : #f60 ;font-size:14px ;}
9 B' C, K T- @+ m) D, o' {) k) `" A6 \4 }* F; O l
在页面中,用class="类别名"的方法调用:
4 k. P* v4 l% D<span class="14px">14px大小的字体</span>
' Y' B$ s9 s* z6 P6 b6 \0 p$ _ s
, g3 S( c, `; G' d7 v; B这个方法比较简单灵活,可以随时根据页面需要新建和删除。
* v2 ~' H" h2 x( L1 P3 k: Y
% c/ X+ b2 W/ u1 K- l7.定义链接的样式
- l b- M* G4 x! `! RCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:: ]& N1 v3 |6 J. U5 w! r+ E
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}* K8 P+ M# R: h, j! n; G) ~
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
2 G! v& S) C$ u, z; t, I; Xa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
+ m+ g J# x1 E/ a7 [6 Fa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 0 {4 J( x0 d4 n3 }: A1 b
; g* F. U, }: {) Z: R8 e9 N
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|