|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。: r' B6 Q J. u8 d* @9 c
( i8 n! i* e9 R# _% X7 ^- W1.基本语法规范- D2 Q8 R6 i( D7 B3 x' k
分析一个典型CSS的语句:0 z; h ~+ L: z- B. @
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
# y c) j& q( S. Q3 |其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 5 E. M; ?# F3 ]+ F3 \8 v; _' I6 K
样式声明写在一对大括号"{}"中;
+ u/ [" {0 m- t3 j( \9 f7 K }6 LCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 8 g/ K( e. k6 y( o6 x8 Y6 X) {! c
"#FF0000"和"#FFFFFF"是属性的值(value)。
& G3 p# J5 g8 `8 |, k& {5 G$ \+ N# l
& Y$ n0 K$ s N; I2.颜色值
{/ w: d8 o7 Z, l5 ?0 Q4 |% ]$ l5 s
颜色值可以用RGB值写,例如:# o% z9 R. W( J, D
- E! h/ t i6 L. a% k9 X* `
. q% M+ O9 Y4 q l,也可以用十六进制写,就象上面例子
$ M' ]3 l+ N: X$ r& F- F' J
9 v# \/ t, u4 Q9 j2 d) B+ u0 c1 k+ [6 h$ S
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
& K; @1 E* y" F. w" w0 _# m3 u; _5 R1 h) A0 e8 y
3.定义字体
$ d! u4 ]5 D: h( m$ C, r dweb标准推荐如下字体定义方法
$ [* p8 d: w6 \3 e, z( |5 R+ u2 i) Q" P5 k( V2 l
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 0 B: J0 T E$ |, s k
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
. M0 Y8 |( l, Y2 qLucida Grande字体适合Mac OS X; " _3 v2 r; X" E
Verdana字体适合所有的Windows系统; ) x) h/ B/ ~; @5 h
Lucida适合UNIX用户 $ p4 o* T, j9 m! A
"宋体"适合中文简体用户;
' Q7 x5 |7 I) v' i/ k0 ^# R5 Q+ o如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;, \' [1 a9 c3 n5 {0 ~+ @
4 u+ Y- N) |( d- k& h8 v+ x4.群选择器
" Q( @+ r$ D8 C! h" \' D, P
8 e/ i. E- d7 m2 }5 h当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:& A! {; r0 ?# n& U% O
- f6 Y w: s0 L4 R/ I% P. i; B3 c p, td, li { font-size : 12px ; } + C4 S1 |7 f9 x* r. c
就是给li下面的子元素strong定义一个斜体不加粗的样式 B4 A3 N$ k+ i, G K
: x! B+ }% D$ i1 y' P6.id选择器$ b4 `+ V5 c1 J7 m9 U
$ x0 N8 S: ]: [* F0 A
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
' h2 g3 O. n2 E) i$ j1 E! Z. m; a$ j' d7 b' k! O: t. A) K
/ d5 @1 @2 t, v6 c
然后在样式表里这样定义:
! F& U: V: c" ?& s3 }$ @% @
" t6 S4 {& ?8 l9 o/ k/ @4 Z; h
& S! n; c3 y6 M' c& x* w#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
* L. d; ^1 r$ @0 a: f9 ^% N4 S( P1 _其中"menubar"是你自己定义的id名称。注意在前面加"#"号。* m2 v; D3 Y) ~7 Z' z0 @
) P. g3 T X+ M, w. A% I) mid选择器也同样支持派生,例如:
7 _9 n8 ], Y' Y3 U#menubar p { text-align : right; margin-top : 10px; }
( X# C N7 k! f+ i这个方法主要用来定义层和那些比较复杂,有多个派生的元素。% L* q2 L& q( x7 A _, y4 ?2 J
! l7 @: V0 p1 o
6.类别选择器
6 L4 F: K' j+ k1 {( U1 C5 K- q* P2 r* W8 Z' L v$ R
在CSS里用一个点开头表示类别选择器定义,例如:
- h1 u& T! W4 E& y.14px {color : #f60 ;font-size:14px ;} 6 V3 ~2 E# }$ z. Y) C. c
6 G* n! r6 p& B T
在页面中,用class="类别名"的方法调用:, _5 N1 f3 p- C9 f
<span class="14px">14px大小的字体</span>
1 E8 Y F# H% }/ B/ v8 ]0 B5 |* e- p6 `5 k+ n6 ^$ {5 J
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
. c/ T5 I: q$ L3 |0 b( d3 t/ ?! G1 [$ y1 [
7.定义链接的样式
4 S; Q) K* L( x/ O. u4 g) C O) Y( G# @CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
/ I% I9 Q, K: F: `+ z4 t. ra:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}9 i; n+ K3 w) c9 K) ?
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}* ?2 x, A0 S& K- i0 O s
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
1 r3 f. j7 d$ l! T' z* p# ya:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
3 q$ \: S! g5 M: z
5 g. |! y: o' _+ u8 }以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|