|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
+ y7 h1 v3 u8 g# u% N5 g6 Q5 H( p# l0 [8 k
1.基本语法规范
& _ a# M4 g" R8 ^) y. W$ R- B分析一个典型CSS的语句:
8 ]1 d8 g( {+ u/ ]" J7 ?! R b) Yp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
8 O M! C5 @4 S$ y2 O其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 5 c1 k. @% |) A) M, `9 ?- X* d% z& f7 N
样式声明写在一对大括号"{}"中; & g6 q- h6 }( ?& ^: M P9 h
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
. o( u" |# B7 h& t( H4 G"#FF0000"和"#FFFFFF"是属性的值(value)。
& n; h1 h/ M8 k$ Z3 O8 B, u+ }! r3 M
2.颜色值5 E$ E8 D& H. S# p6 e$ a* |
1 n& b8 F' t- G$ m6 l: z
颜色值可以用RGB值写,例如:
9 k* `& ~0 x, A1 Q3 r5 b2 H* p$ \, k" ]- L3 M
; s! {; S8 Z) f1 _- w8 {5 H/ d/ k,也可以用十六进制写,就象上面例子* ~4 s% ^4 [0 E
+ [$ z9 W% [0 F, t! s# P
5 }" u8 b/ D, h' _- Y. o
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
$ e& p! b0 c! A5 ?6 @2 X+ a* \5 v" U# N- S# \
3.定义字体
1 G& X6 \3 K8 \web标准推荐如下字体定义方法5 Y" ]; y5 H, J6 y" S6 K& m0 t
3 e) A( [0 x6 h& l/ ~4 }body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
7 J. E/ W8 ~" J' N- U# L字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
& Q9 _5 e( r9 x: z! wLucida Grande字体适合Mac OS X; 9 d/ C! J0 K1 u" |4 E3 V; e
Verdana字体适合所有的Windows系统; . r0 y( F! o6 `: y) j
Lucida适合UNIX用户
3 Q; P, R' _$ w! z! [. f* L9 ["宋体"适合中文简体用户;
- K" }- K# t$ b4 L* E$ r如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;- @. X/ g1 g) x( w2 t; i
( ^ s. K6 C2 R& {
4.群选择器
" M2 p# V! ^$ c. `% ?& w& p/ Z* B$ z' g% ^
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:9 y; Z2 E: d: t( ~
" q, j& l( z; { p, td, li { font-size : 12px ; } 9 ]1 e# b! K$ v; _3 [
就是给li下面的子元素strong定义一个斜体不加粗的样式
/ C+ L0 K1 o7 f% c
+ x. f; q# O) o% p6.id选择器
" K% Z* | }0 T4 G3 G" O7 z6 ] F2 j
# q' G5 u- a& _9 T; p用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层8 ~6 \0 E7 A& j
3 c3 R% m) F! K, `7 T5 A9 ]) ~1 ^
1 f! w1 O L9 o/ W* }4 e
然后在样式表里这样定义:
' D6 D) v; |4 h8 K4 Z
' k0 \4 o3 Y; B! k# l/ V2 T/ {, D3 U& I
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
/ `( Z$ v! k- ~. |$ R! a其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
! f% e, O9 }; C7 G! L- q! Z2 [( i. ~. U! B
id选择器也同样支持派生,例如:1 x+ |' c* p4 U; j
#menubar p { text-align : right; margin-top : 10px; } 8 `6 O. ]& P6 Q: `. B+ E3 g. m8 F. {
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。- ? G3 k) t4 Q' d) [' b9 O: ?9 W
$ ]( h* ~2 Z- a# J0 S, H* L
6.类别选择器! c( Y" s H1 |# j' B3 G: p6 H
( g: s# ]( E% I" f在CSS里用一个点开头表示类别选择器定义,例如:" }3 {) K x+ B, O1 b, O
.14px {color : #f60 ;font-size:14px ;} 0 p) X7 @( @% y4 [( f
U) g4 `4 g& O% E
在页面中,用class="类别名"的方法调用:( c$ V) K2 Q& c# Y: V# B8 }* T! z
<span class="14px">14px大小的字体</span>
5 X2 m' a- `4 E% J4 ~9 y' }7 _" ^: t9 g, m- B+ [
这个方法比较简单灵活,可以随时根据页面需要新建和删除。# Q+ h8 _4 W; `+ o
0 a8 i/ Z6 U; @+ _8 Z4 {7.定义链接的样式& ~4 E4 W$ ]* l* i. m# d2 Q
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
8 i7 c+ S( ^: L; q/ o: t7 M5 a( E, Ua:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}# A2 h* t% f/ ~1 F, u- u' R
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}: ?; G8 H5 t- ^! X* x
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 u( k4 a) H' v5 t+ F
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
: e$ _5 U. E/ M, o7 o4 N
1 c9 u& F% k' P, n8 r/ L, {9 _以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|