|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。( A+ w' X5 p* E2 O5 Y
# ^9 b8 B$ F9 P- ^0 z) o
1.基本语法规范1 o0 w. H6 v! L9 P$ s. e" S
分析一个典型CSS的语句:
2 L' R1 B: N1 g/ o; {p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
: d1 e; F7 o$ D8 p' E" ~2 u& Y其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
" E9 e$ x2 I8 Q/ @1 `4 B' x* A样式声明写在一对大括号"{}"中; 8 Y. y; l% x# Y4 N+ N, I
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
0 q" \- V) x, j2 N"#FF0000"和"#FFFFFF"是属性的值(value)。
% m' ?. {' v8 f, v9 e
: J7 }. ~5 S: P8 A9 B2.颜色值/ c/ T. D5 A0 N7 r2 w$ b1 @* i* v0 z
. o1 E; j( v# D8 z6 U7 P/ Z颜色值可以用RGB值写,例如:- q- v( r9 B7 I: D. l' o8 s& \4 d2 Y; h
7 C7 G8 ]2 c( a* b) o
& [ ^8 u) M8 V& j+ J,也可以用十六进制写,就象上面例子
* c2 o) o x# C
5 u' z0 U% R3 F K0 [1 u7 c7 x5 O$ f# M1 ?( w. b5 w, w
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
% L" U* y/ O1 i. U$ x& G
9 p0 o* _4 {8 X: o W# q3.定义字体, J5 a7 y W' T
web标准推荐如下字体定义方法
, ]) `; h$ x$ H& i! u: e% a
" Z( X" \4 B2 ?$ {7 Y# L1 Dbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } " ]) |- X: }0 }; m5 r
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; $ { u8 W2 O% ?8 ]. E0 H) K- y
Lucida Grande字体适合Mac OS X; $ G# J: |' o. E% Z8 o
Verdana字体适合所有的Windows系统;
/ s H! h; M% f5 M( G |Lucida适合UNIX用户 8 ~! s2 y) j* U1 M/ L4 ~
"宋体"适合中文简体用户; * w' c* `* t7 i' I; l2 \% m
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;) U" [1 Z, [4 r. x$ {8 ^
, o2 ]# ~( o7 i- \* R
4.群选择器, v; J, S p) c, S# q' Z
) I K# j3 p f- w# A+ D
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
! ?1 S* K0 M4 i
) L- @6 ^- r& G p, td, li { font-size : 12px ; } * k7 r0 w* [8 u' e# p
就是给li下面的子元素strong定义一个斜体不加粗的样式' @/ H7 \: |7 E! U, i6 a
3 Q0 @: c- q8 {& n
6.id选择器; U0 v* E d, `8 f5 T& s, v
9 [+ R+ Z1 u: J) J6 B* F0 r
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
+ s! \# s. j) c9 D) a% c" G4 [* W
6 P, l# k) q( k: \5 }2 Y! p0 \; R. r
然后在样式表里这样定义:
1 g( \# z& Z, a' x
, ]* t% c5 s+ n% E6 ?: Q6 L' R2 |$ ]! ?' m+ w5 y
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
; y( |) D! V& c" Q9 s' `其中"menubar"是你自己定义的id名称。注意在前面加"#"号。# y2 n: F9 Y7 @" A( Z; q. t
h1 C2 C9 n2 o) u4 T0 Zid选择器也同样支持派生,例如:
8 d% z. [5 H3 T5 D#menubar p { text-align : right; margin-top : 10px; }
; y( Q" V5 N* U" ^这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
, V0 Q! X$ X7 i; V; c! K$ R2 E$ n' }. ]* [5 Q
6.类别选择器- p+ B4 i6 i( q" b @; ?8 b
, C6 k1 L/ Z5 d$ R
在CSS里用一个点开头表示类别选择器定义,例如:* k) {/ f/ v) _* L9 Y
.14px {color : #f60 ;font-size:14px ;}
( j" Z, u' w8 n( J% S6 i5 r6 a c" R K- Y& v/ h
在页面中,用class="类别名"的方法调用:
7 N& w" P5 p7 o<span class="14px">14px大小的字体</span>
0 t6 M+ ]+ G9 A. I4 F
2 [% P0 K$ `; N8 s这个方法比较简单灵活,可以随时根据页面需要新建和删除。5 A+ e+ S c2 F+ x# }& C
% Q$ l$ U0 j3 u0 B- |7 a, L7.定义链接的样式# @5 d# G! B! v, H: z+ H
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
[+ x- k0 K6 X0 l! [ Ca:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}9 g; z# U- N, Z
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}7 z) ^2 ^9 o' f# ~0 O1 w- a
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
% J& h- T& U: Ea:active {font-weight : bold ;text-decoration : none ;color : #90 ;} / b! Y! Y. `# e u$ ^; a
% U% Y& J$ |. \+ @
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|