|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。# I8 b2 r: f% ]3 w: D' z. P
6 N% S P& D, n% t4 C0 H/ a' ]1.基本语法规范0 c. H5 p& Y5 q9 W6 ]
分析一个典型CSS的语句:( V# h0 a: N0 ~6 C+ M( l
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
+ D; {* q" q# d, O) ^其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 1 t3 N/ T8 x/ i0 @, c5 r
样式声明写在一对大括号"{}"中; . @$ a4 N- b0 u! j4 ?
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
- d4 n% P) Q0 a2 l4 Q2 t. u"#FF0000"和"#FFFFFF"是属性的值(value)。6 b6 W1 i- z" Y4 E. S* r- r
8 U' d% Q1 l3 h& W! u+ U
2.颜色值
( w, A- M8 L9 u8 l) `" r
0 W; S! V- l/ r颜色值可以用RGB值写,例如:
8 ]" |* `% o3 D! U7 ?" I+ w
9 S2 O) A+ a2 x
. `) `4 D a' e- B! u' `* @,也可以用十六进制写,就象上面例子
7 [9 W7 v" D, n& S4 j: U3 ?' x
+ s8 z* L3 O5 X* `5 V
- G" {% w% i, C" M如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
/ s& Y2 i* R1 O& b
- x; J5 P% ]. L; F, P: l2 x3.定义字体
! A" b1 I/ Z8 u! u0 C7 ?4 Z8 mweb标准推荐如下字体定义方法
- \( d1 `- |. d5 J% T$ }- Z$ }. `! c9 _3 B& }
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
- D- e3 A7 o8 h8 Z% o' d* o$ f2 W字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
- [6 n/ g; d5 X5 T/ A0 ~Lucida Grande字体适合Mac OS X;
0 s8 M9 N/ U" D5 ]+ p/ JVerdana字体适合所有的Windows系统;
I# p8 W, Q L8 c; I$ nLucida适合UNIX用户 : G' N" b' a# J& d+ q
"宋体"适合中文简体用户; * q+ k& d+ ?$ y8 F$ p
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;4 I, u! c) \( T
# a4 X6 ?5 ]7 u1 I \0 L, ^
4.群选择器
; O$ x+ O, ]- B3 b
! F: P4 c. X) w1 f9 \% m1 j当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:1 { V( @; C$ T5 Z. o- ]
$ L( v4 V3 ^0 e( F* `5 \
p, td, li { font-size : 12px ; } 1 d# S+ V4 l/ k4 k$ U# S
就是给li下面的子元素strong定义一个斜体不加粗的样式
6 o- U9 ^8 i: e9 `" Z; V1 ~3 k' K# x6 `
6.id选择器1 m3 U- r/ A& k
y" R0 e6 m' ?6 ~ U' V: H用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层8 \2 J4 r5 ^$ {3 l1 j1 R
$ a$ s# t/ N' S1 i3 c
) `7 Q! s: e% H- @3 _然后在样式表里这样定义:
6 F9 W( F3 ?& {! c0 k5 x [' A! Z0 `' h3 l- J/ Q
; \0 F* Q, f3 Z" R- u/ B
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ! M* y* a; g+ Z' m) x! S, V
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。; k2 x, s1 c& ]! t) z
4 l2 W8 X5 R0 c. z
id选择器也同样支持派生,例如:
& K8 d( h# K7 c) j0 o+ j# E#menubar p { text-align : right; margin-top : 10px; } + D% f' t4 q4 ?5 j- b1 `# X x9 J2 W
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
" d7 t* H4 a( }9 C& F8 m/ u, a/ I' ]" `; i* m
6.类别选择器! y( \( s0 J- T2 G: s6 ^0 U
7 I4 K1 s4 a& K6 R- M
在CSS里用一个点开头表示类别选择器定义,例如:, r8 @+ ]! w& F% \8 n; W
.14px {color : #f60 ;font-size:14px ;}
+ l/ p5 |2 j7 Y1 V! K# Q8 c! L
在页面中,用class="类别名"的方法调用:- N" V1 j9 @$ {' s# G- ]; h
<span class="14px">14px大小的字体</span> 2 a$ b4 }) L" u x: }' E6 { @8 r
; S- i! h W4 {# Q这个方法比较简单灵活,可以随时根据页面需要新建和删除。! u) n: o* s0 L: k
: I6 h1 f: H0 w; ^% X
7.定义链接的样式
/ j1 C6 D, x R5 O3 g' cCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
2 A2 P; a: j+ b/ D& {& J, V8 la:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
( `& q( _# X R p& Na:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
1 Q w; H/ g3 ^( ?7 G, va:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
|) p4 Y' C( Y$ _( ]) ha:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 1 h$ @8 s ?# I
6 E8 j6 Y$ o. P ?' m+ L" L
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|