|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
7 N. m6 j+ H) i2 |9 x! K s8 c, r. Y ~6 t: h
1.基本语法规范$ L k' w, ^: O* k7 ^+ ^: O
分析一个典型CSS的语句:
% `- l. I, S0 ^1 ~2 lp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
1 P8 }: G" L7 A0 T其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
8 ^/ b4 a4 N4 K样式声明写在一对大括号"{}"中; ) L' l9 N0 b$ f
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 1 [& _# m+ R, x: Y$ q
"#FF0000"和"#FFFFFF"是属性的值(value)。
# e( Q9 N: t) T$ I8 Z
9 Y/ ~6 Z" _0 U L2.颜色值
3 j( F6 e! j: t
& i6 z( f# B3 D# P0 d+ J; Y5 d颜色值可以用RGB值写,例如:
, B% p* m/ _9 K1 R9 {: _6 _
# _: z; O+ b( f" h" X) i/ \4 _+ k B8 ^, f
,也可以用十六进制写,就象上面例子
; N! A- C/ Y0 W3 @3 Z- }) B' ]. r
( L) ?; Y3 r& A- _ J, [' j! E* A j. b; h7 F# l8 R/ |
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
4 U: h/ n' s$ o3 x6 n G+ M+ t& h' A& k+ L1 l0 y5 Q3 Q, v
3.定义字体
7 T: c+ v! l" a, o1 j5 aweb标准推荐如下字体定义方法
8 [( C1 t; X! K/ W* d4 i
: u8 I7 `8 Y( w' k8 Q+ _5 e. K, Rbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 2 L8 [# x' R5 {7 R! j4 P5 N1 T3 e
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
+ x: O: `! P7 n6 [( ^9 ]2 NLucida Grande字体适合Mac OS X; 7 a9 m4 N0 X+ H. D2 _6 y
Verdana字体适合所有的Windows系统; : B8 `4 y/ _1 P' z. `7 Z X
Lucida适合UNIX用户 : X. I* E0 W j( o2 a1 E4 g
"宋体"适合中文简体用户;
- @( n0 i; N$ Q9 L3 v) t6 E$ _如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
2 V, ]6 w9 A8 @, l' T
* s( s* a* v! A$ j8 l# h9 @; c4.群选择器
' _$ ^7 W$ e8 A) i$ w
9 D. F; y8 G) J# \6 r |2 ~当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:7 Q L- F: x9 S. K$ _$ n$ I& y
1 R( _( L( ?, ~0 l" w
p, td, li { font-size : 12px ; }
8 W/ m0 C9 j2 E$ e& o就是给li下面的子元素strong定义一个斜体不加粗的样式
4 ~# r/ P5 z" ^; t$ A9 J3 c3 [3 Z
) x- p# G& I/ t$ f1 d* c$ T6.id选择器6 u- U+ s5 v1 G/ |4 a: A3 F
. j% l% r# W1 p/ P" B6 c% X$ E- I用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
/ Z3 F1 |& W' {5 S! |, h4 q- g- u; \, D" ]4 V" J
# P" r- W) p2 Z I2 W* c2 {% H
然后在样式表里这样定义:
( K3 }; f6 g" E: }7 m( ~+ {9 c0 [6 J: d+ D" ^
# m. f7 b( |! [* @; C0 v
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
4 x' L! J0 }" m7 i- \" L/ N其中"menubar"是你自己定义的id名称。注意在前面加"#"号。3 q/ w$ \& I5 S) J4 M3 B
9 ?9 O& _$ g, k
id选择器也同样支持派生,例如:+ f, H' `; s9 T" A: z5 Y
#menubar p { text-align : right; margin-top : 10px; }
u; R3 y+ Q* L" X( z9 I0 e这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
+ N6 e; j7 ^4 Z3 q2 `4 C6 e3 ~! o" ~: y" L, V
6.类别选择器+ a5 l' O7 N( p4 v* y& ?
8 R2 u$ T" J' S$ W" l4 w) h在CSS里用一个点开头表示类别选择器定义,例如:: s m* x$ J0 `
.14px {color : #f60 ;font-size:14px ;}
# t3 Q/ f& j4 Q( B0 g6 {3 {) z; Y% w. k5 O
在页面中,用class="类别名"的方法调用:
4 P' i% s5 y/ x<span class="14px">14px大小的字体</span>
7 [" G- G* P2 d
0 n8 B3 `, K# T( }6 U1 U$ x8 g2 @这个方法比较简单灵活,可以随时根据页面需要新建和删除。: r0 S8 l X. G1 m* g& y4 m7 v- d
N3 J* O8 G$ I) i' w$ t% V: ]% I& D* k7.定义链接的样式
" P* `: C2 J' o/ h0 `7 c* W. eCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
! [# Z. q6 c9 W5 z' v# ua:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
, a) ~: p3 b6 Y" s! R" ba:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
* K) L6 \0 N6 n6 @9 G( f0 ^8 R* ca:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
- k& E! k% \; b/ ?3 f* |% B* ]% da:active {font-weight : bold ;text-decoration : none ;color : #90 ;} # N+ d5 r8 j" a8 M3 P% S
5 U. Z( T5 ]* J9 H* T
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|