|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
3 B" C/ O4 n& P; E! ^$ U2 |. c
* E& n- X+ P7 A `1.基本语法规范; a: f1 `; l/ u! H( |# z: E1 z
分析一个典型CSS的语句:+ N( p4 c* a8 J1 q
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
' a' T# B& Y/ v. l( M* G其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; : l! B% c1 C) r1 I
样式声明写在一对大括号"{}"中; & O5 i& X# Y# i! X2 l' P# A
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
; T" ]: d. u* L3 [- u$ f1 h"#FF0000"和"#FFFFFF"是属性的值(value)。
( M& X' M( p# [# D/ S1 g1 U7 ^4 `3 [) c! g5 v
2.颜色值
: ~: h6 Z2 k1 M1 X8 p6 b8 t" ^3 a0 k8 u, U. D4 E( d
颜色值可以用RGB值写,例如:
$ @- l5 D+ G& M; R7 A& U7 b5 ^( H& Q& y* x" q4 P( g7 ]5 h
" B+ g" n4 f# {% n6 K# U* q
,也可以用十六进制写,就象上面例子( `9 l$ X2 X6 @" Q$ g: n
1 U( \: s. M1 }# D) L! Z
( Q1 h& M; s- `2 ~+ m" k, B5 K" |如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
" Q1 _. S- M4 \+ }0 [9 L8 N7 R9 K5 w4 \
3.定义字体: Z" U- Q+ v' b1 ?& P, _
web标准推荐如下字体定义方法7 a0 [( s1 b8 h- R/ z/ z
/ I2 D& t9 G' f
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } * x1 i' |: K; B
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 6 B. L# Q& l0 I9 q% |2 @1 ^! |! t
Lucida Grande字体适合Mac OS X; ' j& T2 {: |4 e5 h
Verdana字体适合所有的Windows系统; * P7 s$ f4 f% O* W$ }
Lucida适合UNIX用户 / `& N" H S6 M0 ^9 w: d
"宋体"适合中文简体用户;
- O& i e. N j* `7 W5 d如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
1 S+ e2 a, ^' F* s# X% ?2 I0 P& r/ K& b
4.群选择器
- F1 @* \1 Z2 k) ^* o, F) K9 E: J& X8 K4 d
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
) H5 ]! z; S# J5 E. F& d: ]2 q2 w
0 _" g7 X% C: I9 p p, td, li { font-size : 12px ; } 6 s0 ?, s2 e* ^7 l7 ]
就是给li下面的子元素strong定义一个斜体不加粗的样式
$ P& x8 L$ s: U% s& g2 X8 j
# b$ o U7 w/ e0 o) O6.id选择器* j6 e! @9 g" g6 R. O
! X9 J; V7 }9 ]- i- x用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
L% c6 _! H- J, ]5 E$ C" t
2 S R( e+ X, z4 ~* M' L9 p; b! N& S
然后在样式表里这样定义:
: N% w$ g! Y! O+ D% ^. Q' _8 S$ k c6 \; Y) U1 j; p5 p& A/ q
; t8 Y6 N% d; b5 m) ~! i" s, `+ `
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 9 I8 r& q# |- S- T) Q
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。1 Y. Z7 ?) e" A% c( s3 |9 D. G
5 ?" P5 q( |8 B2 W; Uid选择器也同样支持派生,例如:- I2 o4 ~: o& g( |$ J+ A0 ]7 r
#menubar p { text-align : right; margin-top : 10px; }
$ k- j# f7 }' {7 K0 m: ?这个方法主要用来定义层和那些比较复杂,有多个派生的元素。2 Z; u6 A* a. }' y6 E+ @! Y
/ A4 L& I* w7 o% P3 U. x
6.类别选择器+ L& P& X* ~' _" m7 D9 O
* t& k; R7 N# {
在CSS里用一个点开头表示类别选择器定义,例如:
0 s- Q6 X! [: A9 S3 Q.14px {color : #f60 ;font-size:14px ;} % N% W7 ?1 Y2 d4 ~7 K+ }
. e, i9 A* n4 S
在页面中,用class="类别名"的方法调用:1 P- Z( P* K8 S
<span class="14px">14px大小的字体</span> 9 A6 t( X- d6 k! C8 U
% W x j0 y9 i3 I, B" I这个方法比较简单灵活,可以随时根据页面需要新建和删除。. z3 A4 l. d% \; T
; z( l% D4 R8 _- Q: G+ P7 X
7.定义链接的样式0 v- r8 }# F' u
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
) h1 l7 E* y. T& x7 Y4 Wa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
( a! j* }) r3 @' n+ o( J; ?a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
3 u0 P- E3 Q: U1 D' Za:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}! G7 _4 s* [5 d7 \. p* S" k: v
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} # h3 r: Z; K/ \2 A u0 f6 j
2 {# y; J$ |# A( ~1 s
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|