|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
3 o: S. B4 [7 l2 j5 l3 ^' W8 f5 `; [% l: i0 K. D' ?
1.基本语法规范
' _" z/ z9 S! v. S: D f& r分析一个典型CSS的语句:
2 k/ U9 t' T0 n& K' q# ]. w: wp {COLOR:#FF0000;BACKGROUND:#FFFFFF} 6 S, v/ t, D! B. V; s# k. o
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; 3 |2 a1 x8 V$ |" m& V
样式声明写在一对大括号"{}"中; 3 P! d6 H' ~ S; {0 W
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
' G# F* y! o) G9 Q"#FF0000"和"#FFFFFF"是属性的值(value)。% y; A# n1 T# x8 b
( _. \1 ]3 x1 x* g6 J0 J% U' @2.颜色值
; U) H. A' w3 S, L0 e/ k# p/ k; E3 y6 ]7 ~
颜色值可以用RGB值写,例如:& i% y6 o; `8 n( g( f& m. H b- L
9 G1 C- u! S: r4 o* a1 i
; s4 b# q# k, ?. |' w7 X! W! k
,也可以用十六进制写,就象上面例子 f8 S+ N1 f/ A) z0 t; G
, u1 a0 i; F2 h6 H
$ ?& t9 O' O! B! r* D( _ `8 c g2 [如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
6 G& V' ]9 q0 u2 x! l/ }5 F* }$ M9 ]2 @# o# b
3.定义字体
2 A# {% k4 V4 W0 W# g0 t5 @web标准推荐如下字体定义方法
7 n. C( m R& u( c) g2 b
( `5 s( U& H: q5 pbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } / A$ b3 p( f1 M4 s2 J. ~; G
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
4 ~0 X1 ^' J# h: C- ?( J$ c4 ]Lucida Grande字体适合Mac OS X;
8 B. G; H& ?" S) ^: KVerdana字体适合所有的Windows系统; ; J; h; o9 ^% T$ F& R8 H
Lucida适合UNIX用户
& d6 W$ e) q5 z2 b8 r"宋体"适合中文简体用户; 1 [/ y+ t H9 o/ C6 n
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用; k+ m" I+ B2 l! Y
" H [7 b9 {: P' J$ N8 k
4.群选择器
( p* b7 q3 n) M
; Y7 a1 s( ^8 U8 g" i6 Y! | w当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:! `2 ~* `- \- a1 F9 |$ Z% u* R/ _
# L9 ^8 G1 N0 {( M$ Q) m; n% R6 X" c
p, td, li { font-size : 12px ; } 0 b, B& g+ G$ ?) s' E" ^* I9 C
就是给li下面的子元素strong定义一个斜体不加粗的样式- V3 `; q* p V3 c3 ?+ D5 Y1 m* B
8 A% K& |9 S% P" _! U
6.id选择器
( J4 C* K3 U6 D; s/ ^/ H( n
! g# ]' C K) l& J9 W用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
) v$ q+ R. {9 H: p x3 F( e3 T3 L- E2 P2 u/ U1 [' h, W9 N! m
/ J4 j* e U' a _) g/ R
然后在样式表里这样定义:- S: }7 L$ N( ~ e/ G2 X, X
! m1 m- B* `3 ^' }3 [
5 h8 H# C/ {: f, a8 `- j& u5 F#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ! T7 I( Q$ {' {+ \2 O( I$ c, `/ E
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。1 e) l) E2 z' J( y, M# Y& Z) o/ e
8 b1 D& i4 ~4 n& {& w0 cid选择器也同样支持派生,例如:; X: n- D5 [6 r) v
#menubar p { text-align : right; margin-top : 10px; }
6 O2 K# j$ f" ] i+ P" e# b这个方法主要用来定义层和那些比较复杂,有多个派生的元素。9 r( X" c$ z1 C! I% f
+ Q; H) G1 N9 S2 v
6.类别选择器
) p( C( a9 f+ C3 ^' E' c5 Z5 R: N/ h6 d" e/ K3 \' ^
在CSS里用一个点开头表示类别选择器定义,例如:
/ n$ `. `; w+ G) ]3 ]4 q: s- t7 O1 O.14px {color : #f60 ;font-size:14px ;} & ^( D( D) P- X1 O- d
- H" S2 e; T% G- ]5 O6 Q/ i+ z
在页面中,用class="类别名"的方法调用:! ], N0 v0 F+ a! E9 a E8 n
<span class="14px">14px大小的字体</span> 3 \* `5 c$ @; M: ]! |4 x
7 B# X/ f8 ^: a$ ?8 u: f8 A
这个方法比较简单灵活,可以随时根据页面需要新建和删除。1 q" R# W* e& e8 L# z9 o
5 m* \6 u/ J8 L6 V" r2 n2 K2 i/ u) {- N
7.定义链接的样式3 J& B% Z' p: |2 o% P+ e5 v' h
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
5 g; ^: _" p* w! i0 A) pa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}& i1 Y! ~ m- Y* \
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
; _9 i* O. m8 j8 Da:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
( }+ [* K5 i: V. K5 z1 Ia:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
/ i6 {7 U0 b" y) t8 e; t; ^0 t- ^) ]* l* C3 s: l7 T
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|