|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。" D. b" Q; m. ]% o& x
/ x/ @- C' D: r9 K3 C8 j' ?
1.基本语法规范" P; ` s4 B# i) O
分析一个典型CSS的语句:
7 y5 J1 T! S* J( U# vp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
3 Q3 [) ^/ B( ]* }$ i5 F+ m9 p其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 1 f7 D6 }- z& g; c8 V7 n6 `2 ?
样式声明写在一对大括号"{}"中;
3 @! w! T. r2 z" B5 qCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; $ K9 Q8 r3 F3 Z
"#FF0000"和"#FFFFFF"是属性的值(value)。: G3 ?. _9 J1 T% r+ G: ^" J
! o" |2 x/ w5 K* U# j" |6 {2.颜色值
+ W/ P% q6 [1 O$ J% y
* D+ \3 K e" P a3 i; H2 T颜色值可以用RGB值写,例如:# o2 m* r2 T) I) J1 Z+ T: ?
( g+ j0 g) z& h+ q6 v
2 U& c: m! t2 O4 \
,也可以用十六进制写,就象上面例子. ?; O- w" ^# c1 G7 ^8 `% H
+ J4 z$ E5 l! P( z! g) P% W. ]7 Z( q7 A. y6 b* o5 ^
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
1 A4 [& o; r% t8 H5 W8 m! M, N
% A0 W: R0 v0 J; I0 ?3.定义字体
( x& m$ `" [ ]web标准推荐如下字体定义方法6 {, \. B& n- H% u8 _1 p4 t
9 }2 S+ ]( [ W7 H+ o
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
. ], ^4 Y# Z) i4 |字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
- w$ D0 v7 [& C1 V1 ^! f- GLucida Grande字体适合Mac OS X;
1 w0 N$ \+ s$ Q1 w1 ?3 q `" pVerdana字体适合所有的Windows系统; 3 Y, O5 W- f' }& e- B. j2 g* I
Lucida适合UNIX用户 . F; D$ I. ~5 p, Q% c# {* h/ \
"宋体"适合中文简体用户;
7 \7 m1 e2 o" J$ J: g8 U, U+ A如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
2 b: f4 i4 E9 {, {% L W8 X, H& B% c! Z- L5 S5 d
4.群选择器. T6 ]5 i+ m4 |2 ~& t, x1 \0 M# O
! u' `+ |* M4 s+ \8 w8 K# j当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
+ [6 N, W# c# z, S) i4 n& y( b
/ X& K$ A9 u9 F2 `* w p, td, li { font-size : 12px ; } 0 o. ~9 \$ _& j+ ]! c
就是给li下面的子元素strong定义一个斜体不加粗的样式) a- p; t9 [. ?' [( t- }2 {5 Q2 h
& B z ]2 k8 B u& H$ @! T5 t* S
6.id选择器
9 o$ J5 f3 S! V4 b4 R3 J, Z, ~6 [* V1 R$ y9 l A8 h4 ^$ N
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
8 ]5 E9 B) R, j! f0 k6 d* e# p4 [8 V
8 Y: y. m% j% Y. z, @/ F* `& l
然后在样式表里这样定义:! r$ ?, r" Q9 P; ?
$ C: Q4 S: Y4 x7 K( i" J( R' F; U
+ i4 W1 L8 y; F) w# m+ S#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 7 R' y: \8 q& @, m4 ~1 V) H
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。 J$ k) m+ L$ [3 a$ K9 |
$ N9 e7 e% W% ]5 I! g2 S* F2 _7 }# L, D
id选择器也同样支持派生,例如:
; O/ Z2 [' Q5 z0 S" x$ j#menubar p { text-align : right; margin-top : 10px; } ; z4 N* c" S: M* E% X; w5 x, f
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
6 ]6 ~ k& d! P, Z) S3 T( g1 h3 j1 P' i; r
6.类别选择器! {2 C" e9 _2 P( r4 n6 B
6 K# M3 o) K, K2 W+ y在CSS里用一个点开头表示类别选择器定义,例如:* r) ^' ^3 g! {
.14px {color : #f60 ;font-size:14px ;}
$ H+ C& U) u8 Y
; _# k6 J' x/ r( w3 }6 l: f在页面中,用class="类别名"的方法调用:
! r$ q/ U; x# z( ?<span class="14px">14px大小的字体</span> ; O& h8 K% Q; Y; n" Q0 f- E
; o9 v9 s3 _5 e) F5 w* r' v
这个方法比较简单灵活,可以随时根据页面需要新建和删除。, x; a2 c" A) o. G
7 A7 T( `2 h2 T$ x8 y
7.定义链接的样式
# }" c5 u1 ?( b+ s8 W! H5 l" G% HCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
: o4 ^, s9 V. R/ b9 ^a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
$ r% j: _$ w( e4 a8 Ta:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}8 n0 V9 X( ^: V- Q
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}/ G! Z" n9 s. e5 f; I' Y2 `
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 4 X& l7 @3 w) T6 O8 ~9 z1 d$ `
+ w/ ]' l5 N7 E7 N. q5 R以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|