|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
. m8 K7 ?: B& x) k
5 j" L, P+ Y7 c2 X; {8 ?0 T9 S7 [1.基本语法规范
; M' t# V9 w3 e& v- I' R8 {* }分析一个典型CSS的语句:2 l F( e }7 v7 o4 P* _ D& }
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} . X! o: M! H; Q* G) \6 t
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 3 {" i) ]$ h0 c+ [2 N
样式声明写在一对大括号"{}"中;
+ ~6 d% [3 N* d$ b$ J, k% U7 o! tCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ]) A& ?9 z& A' @5 w- |
"#FF0000"和"#FFFFFF"是属性的值(value)。1 V- C0 i& s5 R0 R) j
( A/ ]! t3 T; a8 a' X7 B2.颜色值
* U- R0 z& p3 y7 }+ y: b7 q+ l3 x3 L, K
3 M& a7 K: x9 E4 W, m颜色值可以用RGB值写,例如:
) @" c; M4 V2 {, h6 t" y) r
: D+ U Y8 A/ u8 ]: ~0 p, z/ g: T# P$ G( Q3 T; ^
,也可以用十六进制写,就象上面例子
, ~' X. A7 S. D& V- X$ A3 ]$ s- h( M% ^# h& E# m8 D; O7 }" I0 Z
$ N; ^8 x$ r( v, x# T* |
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。8 [3 p( [, V7 D) H
5 c% P& U( _6 \3.定义字体
5 X7 q: V, z P6 \web标准推荐如下字体定义方法' | m- c$ a5 _' j. }
& G1 {5 A& \) S* _- t$ D
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } + i! v- m+ a; e9 k |0 l. z/ @
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 5 J' ^ k; z, M
Lucida Grande字体适合Mac OS X; 0 y6 U! l+ z" c g
Verdana字体适合所有的Windows系统; 8 }; `+ G6 f5 ?! h$ d G
Lucida适合UNIX用户 ; K+ [+ S9 N3 o- i" w
"宋体"适合中文简体用户;
, f2 y- j/ P/ ~/ b9 l: _: l9 B如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
: N, K; e3 U% n" n$ ~8 ~- _- ~. @
) B: s" N) z* E; N. h4.群选择器
4 T/ ^6 [# i0 x" Z
/ E2 L6 z& j& ^4 y& x当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:+ \- ]: I% {+ A1 c h
. e* C c5 p' |0 ? \% @* n p, td, li { font-size : 12px ; }
! c* j# C2 V1 e' z9 E+ Z% O就是给li下面的子元素strong定义一个斜体不加粗的样式
4 c @; K; A S/ M. k) ?& B3 R
! c* ^- I7 L1 H+ r/ s6.id选择器# h) k8 q/ {# @ T1 f
) O3 t# A: j0 M3 d2 v% J% Q0 s# a用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
" t2 P$ Y i2 H0 l3 {, B3 R/ `" w$ ~& I$ c: W/ G9 U: j
# q, k6 F- x8 I1 W4 n6 ~: ~9 }8 q: f然后在样式表里这样定义:1 L z. P: b" G0 W9 T1 e U9 j
$ U7 \7 V# ~) `8 J8 `
2 j" T& Q) t! p8 Y5 z& S7 Q#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
/ F i: V8 R* c其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
& U! y, W6 O7 A/ z$ P/ k' M M$ g1 ]: A, y `
id选择器也同样支持派生,例如:
4 j$ R6 T, N% P9 P: ?#menubar p { text-align : right; margin-top : 10px; }
! C9 g( s# D9 z% M$ X6 X4 @4 K这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
8 k* @* X7 I8 j
; Y; u; C2 a& d# K$ T: f+ @6.类别选择器
( L5 E9 \1 x' k) a$ r) f% W
; n% s% P, g% i& ?' F- |在CSS里用一个点开头表示类别选择器定义,例如:
4 ~4 M1 Y' O! W7 h.14px {color : #f60 ;font-size:14px ;} ' k1 w; c0 I8 E
b: `4 `, Q; A1 C6 }+ X
在页面中,用class="类别名"的方法调用:
& x; l! @7 ~* Y- R1 s) l<span class="14px">14px大小的字体</span> 3 h& K8 j5 g# j6 i! u
2 s7 R( U# g: k4 H1 I2 ?这个方法比较简单灵活,可以随时根据页面需要新建和删除。; r$ K. }4 ]1 u, w2 R
9 M2 i" U9 b5 o5 }6 G- |# Q" o
7.定义链接的样式
9 T( {# p2 h% zCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
5 r1 L \1 X7 D1 z. m. ya:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
( J+ M/ o. V7 m* o C4 l' [a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}2 _6 O, Q* @/ m, J
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
6 @6 C$ i0 p. Y2 j& w& Za:active {font-weight : bold ;text-decoration : none ;color : #90 ;} - z0 M8 x1 H/ r0 E) j
* L1 }) a; d0 o5 [8 k; g9 N1 t! c
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|