|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
1 | I) Y; y: T( A$ ]+ @& P( {0 x# {( f! \5 A% o% l
1.基本语法规范% P+ c7 C8 g; D8 Z3 z7 D, D
分析一个典型CSS的语句:* V, I/ l( O( L3 ~1 |- ~3 ?5 R- n
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
9 v( I, s. P! z4 v3 ^其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
3 O' D( ]% m/ n样式声明写在一对大括号"{}"中; ( x" S' ^4 [# w) \5 I9 t: B" U
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ' O3 e2 S; i" j1 y3 Q- s! O
"#FF0000"和"#FFFFFF"是属性的值(value)。) L" {3 @7 L2 w. h
+ l% e& Z' s* V0 G+ x
2.颜色值" R, l8 o* i% {; `, n3 }" `9 m$ o
# L: R) ~0 a8 f. o! f+ o8 z
颜色值可以用RGB值写,例如:
8 W9 | }: m1 v5 L+ R- e- {
, y! h( C- d3 `) y5 X/ X, S' h' I0 Z- y5 x' i
,也可以用十六进制写,就象上面例子) y' J, ~1 m# u. c; t8 V. Y
" K8 t- @2 ^! d: V! f
3 i+ a5 H; E% [ ~: h+ Z
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。' t" ^2 O) }) W" m8 }+ F
( \ W+ v# _1 [+ e2 ^8 f6 b8 w$ O! S3.定义字体; v7 ?: N" \; o8 }: d- R$ [# Q
web标准推荐如下字体定义方法% {% O) O! u! V. L
/ d, z. Y+ b, E' {+ y
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } # v: l6 _4 a3 `+ t
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
1 `) |, E2 Y' S3 X, d; D+ [) M- {% [3 h! uLucida Grande字体适合Mac OS X; - C+ b6 V4 I3 E. H
Verdana字体适合所有的Windows系统;
, f* n# B2 f* _1 D+ |Lucida适合UNIX用户
# _) x+ E$ L$ z"宋体"适合中文简体用户; 8 k, ~9 Q/ M* ]6 f7 d
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;" v' r( ^3 d7 z% a- Q; D
9 X9 Y2 C# D* H/ E
4.群选择器
+ }$ q: H$ X! r( p4 B3 B
B5 t# g$ n- G6 P0 N7 Q' A' u当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
. C% w4 d) M0 i/ ]! s' c
7 S1 n) @; P! _6 a p, td, li { font-size : 12px ; } . g4 {- p! ^0 C1 s3 o/ c9 D7 k7 n
就是给li下面的子元素strong定义一个斜体不加粗的样式
2 O" E5 Z7 o, \3 w
) `5 r6 k ^& P- F) G/ Z# X6.id选择器
( v' { K% ~& g" n! C3 O Q8 M5 B# }, H1 y7 x% r; y! Y
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
0 A, x' O. _ r H: y6 d2 e& Q' h S ~0 ~8 O7 J
7 T2 X) N: A4 l7 w, U$ j
然后在样式表里这样定义:
6 S, f8 h; t, q/ d' x; B. ?
; Y! F9 t4 K9 S; H% L$ Y. D( H6 D" U% y( e
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ( H A; J$ a% Z( y A1 i
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。4 [. p' f9 L$ j* d6 T7 `* E: K' H
+ v) X! U" T x" ?9 u8 p7 t+ W
id选择器也同样支持派生,例如:
0 S( Y- I5 w* y#menubar p { text-align : right; margin-top : 10px; }
; o5 K: X. @* u7 b" A这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
; f' Y/ V3 r- W- F$ U( ?! F0 t2 }2 t& M7 z, X7 A
6.类别选择器- U9 F4 R1 A! Z
1 M/ L7 w2 u8 Y& C/ |' a
在CSS里用一个点开头表示类别选择器定义,例如:
; c* G2 S2 Y- j( C$ m. t! e6 P& C8 b.14px {color : #f60 ;font-size:14px ;}
1 u4 c* k, y' M% L: O7 r" x
: w# {' m$ i2 p在页面中,用class="类别名"的方法调用:# t) o; `6 [( ^, d |8 I' n
<span class="14px">14px大小的字体</span> * t; I ?- i0 A2 A: v# H6 E8 m6 A" C
7 X" }1 i+ O. L l这个方法比较简单灵活,可以随时根据页面需要新建和删除。+ o- o: N. b4 P2 ]: l; b
1 a8 E0 H5 ?9 d+ M7 R
7.定义链接的样式
! n2 P6 a T, G9 w0 r ECSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
4 W, L7 r% x1 n. T ^- Ua:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}) n" M" k9 O. v: l6 n/ W2 K1 l! b
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
: e" g6 g& c& \1 ya:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
/ J f$ _! G P# q2 k1 qa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 8 ?, w5 g8 T( h0 L' X: S, m
+ x+ q- `/ I$ O1 i
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|