|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。- j5 S# l" u+ i% B* Z6 J" J/ k' m
, X+ l- l* @9 f' N* c: R
1.基本语法规范% q/ B, R& l6 a, H% p9 s
分析一个典型CSS的语句:5 ?, K! Z0 _- k
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} * C4 c4 M7 ^7 E/ E2 I' P( p5 E# j
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; $ }0 C( s: \& R1 H: s, [- i: X
样式声明写在一对大括号"{}"中;
, v& |) C- s( N0 }" H$ _. KCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; $ C3 d" j1 S2 F- P8 j" o/ l- r2 p2 o( ~
"#FF0000"和"#FFFFFF"是属性的值(value)。8 X. J' r$ v& ]; I( r$ M( L7 u, h0 b
+ {( I0 _6 A5 z: T
2.颜色值
9 X! U# F: W, e" S) z0 ~# d( }' u# X
颜色值可以用RGB值写,例如:
8 P9 t$ N( y( d& ]3 I2 n' \+ |& B1 P! t" |; L7 T
+ e( l/ ^7 T. R4 M
,也可以用十六进制写,就象上面例子+ v5 `6 ^3 N1 ?8 l2 c G" e n1 h3 j
6 n) {% v1 [* I' o1 y# @3 w
' [/ W- m9 F# b! l# b如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
$ Q8 X; U) u0 K3 \! ]2 Q2 E7 G. X0 t
3.定义字体4 g9 b. {: a9 o) K
web标准推荐如下字体定义方法) l1 i8 ?2 N0 q& e. q1 ~
1 ]% i6 k; l5 F% ebody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } , D f8 _3 x5 H( q; [
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; & P: [/ T: ^5 t
Lucida Grande字体适合Mac OS X; 0 |- i6 m6 F7 A
Verdana字体适合所有的Windows系统; 1 I! n6 G+ \9 A
Lucida适合UNIX用户
+ I5 Z9 m8 v8 {$ D# j"宋体"适合中文简体用户; ) ~" w& `' ? L7 @
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;8 ]$ A% r! ?/ O( F1 i. n# A% Y
' F S0 \% c6 b' @# `
4.群选择器9 }* ~" P( J1 ^- Q7 U6 z: r
) E9 V- b0 @ C! u' I
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
/ g, W- F8 B4 g: m" }, M" x/ ` z, u" W8 t1 p; m5 ]. `3 O
p, td, li { font-size : 12px ; } 9 n# n" b5 |% q0 l& s" ^
就是给li下面的子元素strong定义一个斜体不加粗的样式
$ L& @7 o) i" u m! t
6 v: ^. k, }6 ?2 E: J' r$ Z6.id选择器0 Y+ |' w* ~* S* I3 D$ N
, b5 R& P; ]! J
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层. c/ J0 |, ]/ x$ _% p
8 c2 @8 h& x1 E S+ ?3 v" s& e2 s$ c u3 _
然后在样式表里这样定义:
, W. c R2 z0 q! R9 n! g0 I! B2 C' S- l8 Z& g5 _: a- `, q
) X: |+ i4 ?: i3 s
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 2 j# I, Y4 g: J6 Q
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
5 ]0 \7 p: D/ y( D4 l- J+ a
f6 p1 h$ Q3 aid选择器也同样支持派生,例如:
4 z. B5 d3 z6 M#menubar p { text-align : right; margin-top : 10px; } 1 r% I- I$ L( b& e/ p4 I
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
! A* q2 S9 P# {. ?1 w9 v5 D- N! k5 t9 H
6.类别选择器
' x. J5 f2 j- j4 ?/ r
+ k: O' h3 I" H在CSS里用一个点开头表示类别选择器定义,例如:
" `" I" M0 [! w9 ~8 \.14px {color : #f60 ;font-size:14px ;} " ~/ W5 B4 O+ l0 j* C0 P
! }7 k) d. f& ^1 }$ i; {. [在页面中,用class="类别名"的方法调用:
" l2 }9 u* e" j2 b<span class="14px">14px大小的字体</span> / n$ B! V) C% A* V
8 T- g3 q) U. F% j# F% E这个方法比较简单灵活,可以随时根据页面需要新建和删除。
s- d/ R, H6 O/ o w
4 p- [, X, C6 L9 b# C2 q' q7.定义链接的样式, {. u( a7 X$ m, Q
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
6 h6 w; t# ?) a, I7 E2 T2 Ka:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}% }: x* u$ O8 ^
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}9 z! h# R2 ]6 ^( z6 }+ S0 C
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
v8 K5 x+ Q5 ~* ]a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 0 O" E9 f7 w7 W# u: H
) V5 [5 S) S" v. X! C4 V+ A% G
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|