|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。- K0 L! j, H: a, C
' D1 n4 R! g5 V, V; n3 K& ~( j1.基本语法规范
% I% V) A/ Y0 _* K T6 |分析一个典型CSS的语句:6 s/ Q: z( q8 n" C9 K7 [
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} & {; v+ b4 \# C8 m+ b" H
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
7 ?' G T" Y4 R5 R+ \6 I1 R- O4 M) L7 W样式声明写在一对大括号"{}"中;
! |& G. t8 J6 ~' }5 tCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 7 P2 \! E8 }+ U2 Q/ v9 M; w, |
"#FF0000"和"#FFFFFF"是属性的值(value)。
- u; R( l2 t+ c6 s$ z3 l$ u! Q0 L# w0 ^
2.颜色值) D, z q' z3 J, e% q' T
1 G7 j3 I* ~2 k& N2 T颜色值可以用RGB值写,例如:6 _/ l5 ^, o" [, \! G% v0 D/ m
, R" H7 T, ~* g1 J. |
9 W B. N" H6 G$ Y3 |& s7 `3 c
,也可以用十六进制写,就象上面例子
) H0 E7 h) [$ H) N1 x) d. _3 r+ U- a/ E6 J
, y2 ^) y5 w9 C3 N2 u- O如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
H; n0 H9 j6 Y: l( V6 z7 M/ Z! N, w6 ]+ ?5 q( k
3.定义字体; @4 Z4 s9 | [: L, ^( L
web标准推荐如下字体定义方法, p* F5 E# S) O4 @; k) r
0 ~! I; l4 i$ i; l h
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
9 F; ?4 A; m: w ?6 ~6 M& T字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
7 C0 n" @. Z1 p; KLucida Grande字体适合Mac OS X;
6 |' j, P, x0 J) h# [6 O, zVerdana字体适合所有的Windows系统; 0 k" p7 ~( c1 x7 y2 t; ~
Lucida适合UNIX用户 $ |. c2 L& f2 ^) z1 t
"宋体"适合中文简体用户;
' I, b: u& D5 Y) C0 c如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
2 D! s* i- x" U" w
% X7 b$ i5 h- q5 q4.群选择器
" t( @ K6 c$ Z( q% R" }) B/ n# F8 |. Q
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
5 n- g/ t& x% H+ o- r! o
3 s6 W. k9 o* Y* z" i p, td, li { font-size : 12px ; } - q- I! z2 Z$ `: ?5 H/ u' [
就是给li下面的子元素strong定义一个斜体不加粗的样式8 E0 v/ l# M2 y
3 P. }' G# L+ R2 P6.id选择器
' S6 y) S9 W/ M( }+ u7 c# h
, R3 ^! h6 k* d+ @7 o用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层, r5 g P( B, O$ M6 ~; R
6 l0 M7 i3 l. a( W8 r
) P* b% y0 f% S9 z+ C& Q/ k然后在样式表里这样定义:/ R2 c2 S1 V, s6 ~% K3 c f
( N3 t' v! g- F' l6 n+ G! P8 E# M5 ]
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} $ l: F1 K: H$ U& B. k
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
) d5 y. s/ ~7 x% ~" W2 B
; p& J0 Q7 K% C) [* F+ p1 V( V7 h+ Oid选择器也同样支持派生,例如:
8 e t4 G) h( t, Z! Z" N9 [1 p#menubar p { text-align : right; margin-top : 10px; }
8 x' ]; D% k8 ]7 ~" X' m3 j这个方法主要用来定义层和那些比较复杂,有多个派生的元素。1 l$ I* Y3 A: f" e, Y
4 _6 V. ?! r+ v4 k, _( o7 [, g g! t
6.类别选择器& j7 y, ?2 ?' H V1 v/ X
& i' N1 f, y# C# l9 [在CSS里用一个点开头表示类别选择器定义,例如:. G' r$ R9 d! M" G1 o
.14px {color : #f60 ;font-size:14px ;} $ @" Y. j; a; H; r8 l
: _+ W' A( V& T& ~0 V
在页面中,用class="类别名"的方法调用:
; S$ d) U ]' x# s& E/ b4 t+ F<span class="14px">14px大小的字体</span>
\2 E! \( v- k% t
1 N) e% y" K3 z, S6 i5 @2 R这个方法比较简单灵活,可以随时根据页面需要新建和删除。' S3 M7 t+ I& l# N: I& j
* E" W' f3 W0 k# D1 C$ l9 p7.定义链接的样式
7 W/ V7 T* V8 M0 p- N! ]3 Y0 MCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
+ ^. g% t. ` Qa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
: P* C3 [1 E; W( ~# ba:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
9 F4 m. r' x. R: ?a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}* e/ N5 H" h6 u( X
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
2 o9 G/ p' }7 c) i0 @8 V+ F4 Q6 q& h1 q/ x7 p" Y
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|