|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
3 M7 ^0 W, Z. l/ X0 R4 X/ n4 Y/ q% N4 ^
1.基本语法规范
) S" F/ {7 M. P分析一个典型CSS的语句:
8 _2 h2 R/ p' T1 bp {COLOR:#FF0000;BACKGROUND:#FFFFFF} $ S0 ?$ d6 R8 j
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
" t/ y" c$ C; {% T样式声明写在一对大括号"{}"中;
! o. E$ b( t! \+ QCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; - |5 ~" \. s; ^, H
"#FF0000"和"#FFFFFF"是属性的值(value)。
$ e e7 E% D! n1 H8 M! h- D2 R- x2 j% }4 h4 @2 l# [! p4 j
2.颜色值
# a& y; E1 `7 x+ c4 X4 ~$ ]# e4 ^* w: G; G9 _/ j4 i( X4 i! V
颜色值可以用RGB值写,例如:
* y0 H$ |) y/ A' z1 i( C; r+ v- Z$ y3 A9 t
1 O" ^3 L+ b$ W( \8 J
,也可以用十六进制写,就象上面例子
$ V4 H0 E9 C% }- B% ?7 D8 B7 \9 o5 G. q9 b2 F* {
- o- m/ b2 c+ f1 m
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。- i# F2 H$ W& O& a
) r# ?4 n+ U$ n% g& j
3.定义字体
% y3 j7 e! O5 x- L( Yweb标准推荐如下字体定义方法
) H$ w: A3 i- {5 N" u% L; a
$ k$ K* ]; Q0 h3 Wbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } " q# q7 z" a- y1 C% n4 U) c& a f
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
. ] i' v" {: M, m9 x! l& ], G; OLucida Grande字体适合Mac OS X;
$ }; {$ M9 J$ f1 F& C. V _9 @Verdana字体适合所有的Windows系统; 3 u w( P: Y+ p3 v8 P ?5 v
Lucida适合UNIX用户 ! \1 ]' }1 [+ c# C
"宋体"适合中文简体用户; 1 n( N9 k4 [" s6 [# |
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
) z& Y# Z9 {- L6 _% v3 i, a& B
6 x M, v+ F! e# R J6 a4.群选择器
. i) ^0 z/ e5 _7 q- l' v( m- d/ K3 a6 s) Z8 e" r. c3 R+ Q3 ~
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:- z; c7 q! H" V) b, J
& p5 }6 ^# G- ?3 F' n
p, td, li { font-size : 12px ; } ; H: Z+ y/ ~8 u
就是给li下面的子元素strong定义一个斜体不加粗的样式
& |6 U2 q0 M* J
, G7 g* o% N, L7 L* M& E+ z) x6.id选择器$ F; `, T8 T& L' K/ N' R
% q" l7 ~! V; t+ J0 N2 D
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
4 q2 o9 J- ?$ b' U: ?3 N% N5 l/ P8 q. u# n
. `2 U$ S8 j. P2 T
然后在样式表里这样定义:
6 I$ m) B; ~" u+ `. `* s l% L2 @# G& H8 O# T
) P g2 d" ?9 E& {" ]5 s" d
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 7 q. ^$ k' o. ~
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
7 U1 S1 M+ B" ^5 J3 @4 E) S
1 H3 \4 A/ S% I" tid选择器也同样支持派生,例如:* _" O' n' s( e% E
#menubar p { text-align : right; margin-top : 10px; }
9 M( T! |+ l2 M9 x6 @) ~这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
" k3 C& E* ]8 Q; ]# p% C
# Y3 G# P/ c/ j6.类别选择器0 [, `" B$ m6 H( z0 B- p/ W- C$ Z
: a m" _' {. u% F& ^. V- }+ Q在CSS里用一个点开头表示类别选择器定义,例如:/ B, |; g; l3 y1 o0 I* t
.14px {color : #f60 ;font-size:14px ;} 9 W0 a0 d% c& o& f5 z/ \2 b
4 ^! k$ s6 @, }" z: c2 h
在页面中,用class="类别名"的方法调用:
1 y2 w- n/ z8 v" T<span class="14px">14px大小的字体</span> 9 z9 ]. C' z6 y
0 ~0 Q; R. r6 y
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
/ J- W$ F. J8 d; d7 w$ D# m
: n, r0 P' p9 n& _ G+ O2 n* X7.定义链接的样式
. F0 B8 n! M( k; H) q5 f( bCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
" N* }# e, s. h) Ga:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
3 d7 v* e* i- I) f* Ea:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
) ~. Q0 H' A; p: j8 @" e. ?4 @a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
) _1 A5 ^( \5 Ja:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ' p. P; |9 F, W. G! p' v
: r6 C' y+ h3 f以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|