|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
a9 G4 C0 {/ ]& x* J: E
# p# p# {1 L) n- N1.基本语法规范' B7 I' s0 E4 ?$ u) J/ j
分析一个典型CSS的语句:! q/ F4 Y) q: [9 } P* d
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
( P |- B9 P' N9 a% P1 Y( o0 X1 K+ s其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
4 F+ O$ U: k& t# Z3 X7 Y# I; y- i样式声明写在一对大括号"{}"中; " H3 _/ g& g% `2 v. F3 |" O- h% f
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 5 G! T2 D" L# ^$ _3 c5 q
"#FF0000"和"#FFFFFF"是属性的值(value)。
- S) Y! Y7 ?) S' Q, W/ N0 K# V K9 @$ g ], Z3 u' U5 G. ^% r3 e+ {
2.颜色值. s$ C! @! s7 c9 U
& z5 v- O7 f+ R+ X( |$ ^0 c颜色值可以用RGB值写,例如:
, N+ y7 w3 w$ l' a/ j% r9 v3 b- U% X' m9 S; b) W
& G$ z# `1 v7 d" ]7 l, X,也可以用十六进制写,就象上面例子- x6 ?) E, [+ K# \( ~" U# E
- l* g* f4 m n: m' l, X; u# _) f5 Q$ y# l( U4 C4 Z# c
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。+ P3 @( s- l' X
. g/ {" k5 r# E
3.定义字体
I) L8 p7 p" M3 Dweb标准推荐如下字体定义方法 a9 x8 P/ }7 P" d3 {" F- c7 P* E
/ y. [. O8 q6 Y: e4 y* a
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
2 K1 {& H7 B5 F字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; Z( c5 i- Q& S6 W7 a4 B& X" q
Lucida Grande字体适合Mac OS X; * A) t0 o+ s6 n3 k8 F
Verdana字体适合所有的Windows系统; 9 \" h+ W" @7 @
Lucida适合UNIX用户
. k, q8 t; e0 B"宋体"适合中文简体用户;
8 ^* X* H2 C# n# C( J如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;- w5 I9 j1 G2 e4 G) [
7 K$ d8 h g9 I( P% m, W/ o
4.群选择器# R. v* c! d/ X3 ~/ k* Q
8 ?/ N0 L9 R& M& T
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
# k6 V* w3 H3 u7 w$ V. A+ D6 I
" e# ~# ?! f$ _ p, td, li { font-size : 12px ; } " h j& p; i2 h7 [
就是给li下面的子元素strong定义一个斜体不加粗的样式
2 v8 U% i: i0 f9 X1 k) e
+ r! a- t8 u. c. J, A) w7 W% v' u6.id选择器( {' i; @4 J" ?" n0 {7 Y) |
9 K7 {7 Y& o& N( j( ?/ H用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层! F% S& T. z* o) N. o) R0 Z
6 @" ]( q7 O2 M/ I e4 T/ V; M% @5 M+ `
然后在样式表里这样定义:
7 f5 @# x+ K( W5 ~
' _8 |/ v8 ^# p7 ?/ C2 C
6 a( @5 y! W0 [+ [7 k#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
! v* f8 z$ v. E+ w* `其中"menubar"是你自己定义的id名称。注意在前面加"#"号。7 `8 b0 Z: a/ ?8 C4 B, I- s Y2 U
+ N8 c: e* {& p* M8 c. x6 h/ eid选择器也同样支持派生,例如:2 T7 _: H( \4 i1 O: g4 K3 h) H9 r
#menubar p { text-align : right; margin-top : 10px; }
U' H; i+ M+ t- d这个方法主要用来定义层和那些比较复杂,有多个派生的元素。: A6 k' e6 }7 Z- B$ u* ]: [* C
' [& H x: A9 h" ?! D/ T6.类别选择器$ J; z; s( a& j
$ L8 j3 v2 X% O7 F0 ?. r1 J: ~在CSS里用一个点开头表示类别选择器定义,例如:
8 [7 E6 I2 \: z# Q- R/ n.14px {color : #f60 ;font-size:14px ;} 2 P2 V0 h/ V$ ?% g. f7 \
) Z4 f M6 P3 q9 w
在页面中,用class="类别名"的方法调用:
1 c t: n Y, R<span class="14px">14px大小的字体</span> 6 b1 j9 n% a- r0 N$ L$ I8 f
, K: J1 K1 x+ R& [: C4 ^/ p' R2 p这个方法比较简单灵活,可以随时根据页面需要新建和删除。
7 E( y. c* a c. e+ E
( H* s* A F: H; D7.定义链接的样式( A1 h9 A! `" I6 I0 ?3 T7 @5 `
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:8 f/ b& L% s- U/ s9 ~ m
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
7 n. v( \. q+ r) Ja:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
7 _! C5 I* U5 m5 U3 ^7 S+ Ka:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}$ P" T( Y( j/ [% I
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ) ]: k( u) f2 q, y" F' h$ P
, f/ h# ^9 p4 x" d
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|