|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
9 ~# d0 F+ q2 k7 L( B( i/ {+ V/ I" D. C% I1 C; V* P0 y7 F/ `9 ]; S
1.基本语法规范* w, k# D! i; m/ b5 x- X
分析一个典型CSS的语句:
$ Q- S4 S2 ~3 ?( ~p {COLOR:#FF0000;BACKGROUND:#FFFFFF} # @$ c6 s: @, H6 w& Z& w6 s# \
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 9 r" m- G8 s* m+ D; v
样式声明写在一对大括号"{}"中; 0 L5 P9 j* o# p0 a* D. Y; R
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 5 U5 B8 P! ?/ Z$ b- C4 T1 G
"#FF0000"和"#FFFFFF"是属性的值(value)。
8 e8 ^/ [- Q. P+ \+ i, Z8 {* J6 L u
2.颜色值
; `' c7 K8 o2 b, R) W0 U) d* R6 C) _5 x3 k& w: u
颜色值可以用RGB值写,例如:- W) y4 c% e$ \% r4 |" p
# R# f) x5 S/ O( f" p
2 L1 F9 `. x- q0 O9 b,也可以用十六进制写,就象上面例子
; N& Z* r G- s4 V8 n: W, j8 @3 w& t4 U* r% B# ?$ u8 Y
% ~6 l# C. @ _; I3 I X如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
/ a# G1 l# a3 ?! l3 t g: i- y) ^$ Q' u
3.定义字体
- Q) N1 a+ a3 S/ p0 wweb标准推荐如下字体定义方法
( U5 I. i- [( s3 H( S2 e. {. a/ a$ W% _0 S! m v2 C
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
8 T9 d7 j7 w, m( T4 o/ q: ~! I字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
4 x) k* M6 }# G, I2 t0 _. O% ILucida Grande字体适合Mac OS X;
" [1 G( c9 G& Q1 aVerdana字体适合所有的Windows系统; / z9 P2 @; b. f) q
Lucida适合UNIX用户 - u6 u4 q# l5 j
"宋体"适合中文简体用户;
1 E8 w1 k5 m$ Y如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;+ O) P5 m0 |! g" N" L
- {: z8 T3 n% Q( ]9 O( G2 Q
4.群选择器
8 s; g3 f# y( {' `# z) W
a6 q: i; \ H1 r" G0 Q当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:. n' k2 [) Y- y) a( Q8 q# k( ^+ @
1 C- S* v' R* `/ M6 w. r9 K$ r( Y p, td, li { font-size : 12px ; }
2 e* N' G! i% p0 W) G( d; W, E就是给li下面的子元素strong定义一个斜体不加粗的样式
. e6 y& j; X% z: l
7 w: U& m0 f- }; f7 U6.id选择器
A& @2 ]. y, ]0 Y& K
- t- a7 Z/ ~ {用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层: m+ \. B: G$ i5 a0 C
9 e: U. z- c* f$ g, J) d1 N6 B
; z7 _5 ^: m# G# c% G" o
然后在样式表里这样定义:
3 F" D: ?1 O9 T+ K) |
. p, v- P. ^2 H5 |! T! `2 t3 `# C# o3 \0 D; _9 X/ t
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
# ~8 g, {: [" ?! ~3 |0 g其中"menubar"是你自己定义的id名称。注意在前面加"#"号。" n4 X+ f( E9 u6 M
2 a7 N6 J, _. R* t& b1 b
id选择器也同样支持派生,例如:
% `1 F2 C, b0 J2 q. A#menubar p { text-align : right; margin-top : 10px; } 5 `* D/ C! C# {! a
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
. T7 m" B0 i$ y! e3 J7 F( f/ D* ?3 p7 y {* O
6.类别选择器
5 k& H& W+ b' x2 {% u) s: G
6 [% t3 w3 \6 e$ u1 s在CSS里用一个点开头表示类别选择器定义,例如:+ }4 \* _5 K, w) r
.14px {color : #f60 ;font-size:14px ;} : E2 |( ]# w& c1 Q( p; D( N
9 f$ L4 o6 S6 P; @7 W在页面中,用class="类别名"的方法调用:
3 T0 P. Q+ }' T<span class="14px">14px大小的字体</span> 4 K3 y; g! L" e7 M9 W
- b' y ^- a( Y这个方法比较简单灵活,可以随时根据页面需要新建和删除。
8 Z- }3 h* _0 o. `: e5 y' r) G" P$ y
7.定义链接的样式
7 o% r% L( z: z$ b* NCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:6 _4 l7 m: E+ S1 y( g
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
+ i9 g& i4 k$ |a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}' |; O7 {4 r( r
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
5 U- g' C8 k' X8 G# Ba:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
( }. C* g4 Z0 U4 ?, K8 {. g x; q U' o$ D5 T+ J
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|