|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
3 O( i1 E/ J1 f2 t, Y; F* o& Q- M, i% g
1.基本语法规范
$ T- c7 Y% f* V# H, ~# E分析一个典型CSS的语句:2 g$ y9 s- @% f5 e( ~4 S
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} + v1 H% m% I) b: R
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 0 Q( `! H+ }: S* d# Y! H) e& Z e
样式声明写在一对大括号"{}"中; 4 V1 g. d. ^6 T" E7 p7 d
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; & O' W. i3 r% W2 S9 M
"#FF0000"和"#FFFFFF"是属性的值(value)。
# Z" d6 _( j, @4 c( N# _/ ~9 S
2.颜色值* e% I' R5 _% z9 ~
6 B1 _ E+ S, ~) I. S* B7 n' V
颜色值可以用RGB值写,例如:
T4 x+ u# v8 B+ o! U3 W2 e1 k+ p J
5 \7 S, x' @) s- A9 s- b
,也可以用十六进制写,就象上面例子
$ X; R4 _4 E3 m2 J: d3 I( L/ y" r5 t$ Y
B9 F3 s* j) B. b; N& l5 x9 J
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
+ c4 e# ]# T* s6 K: K% H0 l. Y$ h# J7 H8 g1 h: s
3.定义字体
2 D1 z* ]6 x. x9 C$ q% T! Lweb标准推荐如下字体定义方法
5 t- x2 r! W* Y9 |& K; P) q( v/ a0 f5 L, e
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 7 `$ G' @7 g! P) c( c# Z
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 6 I- ~' h& D w# v7 l5 d& ^
Lucida Grande字体适合Mac OS X; ) P h9 J# l9 A4 f
Verdana字体适合所有的Windows系统; : ]8 p8 l i4 E; J8 c& g
Lucida适合UNIX用户 % l% Z2 |" B$ R; c/ x
"宋体"适合中文简体用户; - n/ M3 b% d1 |6 t7 _
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
7 `* @; X3 W( A) V+ a: b" |6 y4 x/ _% O2 ?6 I* W- O
4.群选择器
$ w" Q$ u: H! _4 }( ]- C7 j" p$ C5 v5 j' u6 h2 y
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
- F5 @% g% M" \3 k/ Y ~, w" Z. c) A7 j& {! s3 `) B
p, td, li { font-size : 12px ; } - S' @+ H8 R% X1 P7 ?- p
就是给li下面的子元素strong定义一个斜体不加粗的样式
1 N( e6 I% I: Z3 s( z+ k
3 [- Q8 M" X, J6.id选择器
9 T% e! P; H2 |& n9 r ~8 F
6 k6 h( N. U& F用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
5 y2 ^3 `# e' Z5 } r9 N
! C+ s& F3 `7 i3 z" Z0 c
c) i* t/ Z5 x) k+ |+ v然后在样式表里这样定义:
+ e( Y0 s3 e* l( o2 E# e3 w% H+ g% m0 L' k3 W/ N* G) [
$ B! b7 {, v6 G n! H
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ' ~6 V' n% G) `+ ?3 q' M; W- \
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。4 B2 \' {4 s0 O" r: R1 {* d
6 [5 E$ D" U, U
id选择器也同样支持派生,例如:
6 u5 b' g1 r' r2 x#menubar p { text-align : right; margin-top : 10px; } 4 {3 M1 X$ q7 I
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
7 n- I* w% r" T- y0 d4 u* j: t( d8 s4 @! b# G
6.类别选择器
* y$ m7 T/ Z3 Y8 }0 E' d
/ _* X$ L& n+ a; J N在CSS里用一个点开头表示类别选择器定义,例如:
7 k G! E! {1 m" h$ C. D.14px {color : #f60 ;font-size:14px ;}
% p1 `0 H8 G0 @( C4 A9 g) [ H) K* _4 u* a
在页面中,用class="类别名"的方法调用:
9 W. c! G$ c$ ?2 |2 W<span class="14px">14px大小的字体</span>
1 q$ h \. S# I- P3 d" \+ q7 v) ^5 X- T0 o; ^/ d3 a
这个方法比较简单灵活,可以随时根据页面需要新建和删除。$ `+ `" x9 N) M
1 q% i3 w0 [$ A( \/ N7.定义链接的样式
: a2 M- S5 H4 d0 t- [; [* n' kCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
! z9 k* A3 F( c! ja:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
2 P/ u `* J5 w5 {5 O3 f: Aa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
6 N% D4 b& F9 `a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}! x7 B2 I/ \0 K5 w9 G, F
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
8 Z) z* k7 ^; |' r8 Z e' C
! p/ a8 m8 c- f: X: V9 }以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|