|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。, T) \1 [8 e4 l8 y/ U& t. q
; a0 `# T0 r/ V2 C/ w$ Y1.基本语法规范
2 X3 F0 j& l# J: t% O分析一个典型CSS的语句:7 C7 W: \. \/ s1 d4 {2 o1 q
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
3 ^) r. @/ `6 M, H/ X其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
" G6 u' R. J% y- Z2 V( \样式声明写在一对大括号"{}"中;
9 k/ G3 v7 H& L. J' jCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ?6 d' k0 `* Q d: X1 T
"#FF0000"和"#FFFFFF"是属性的值(value)。" T4 y& |8 M$ J* c" [( P& s# D
6 `" t/ M+ a4 v' v7 K* P1 k2.颜色值& G1 x! b# z4 y j
8 @0 b0 Q8 t( _9 c颜色值可以用RGB值写,例如:* d! c: Y( H$ W; v) \
P3 x* N* X. X" G" D% l, @2 P
2 m" x( _! X, U$ a
,也可以用十六进制写,就象上面例子
( Q$ j/ J7 l' m
; c* i- d# W2 W: U+ M3 Z8 Q4 n* o8 v) ~
, G4 Z2 Z+ v; {& U/ N. `如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。1 {8 L/ J# B) \. Z) j
# L+ |6 j3 {" d4 F/ e: G9 X
3.定义字体
& s Y: @0 J& S) C$ d3 V; G D" Uweb标准推荐如下字体定义方法
7 z! }4 G w( {) ]* e4 S) y# R( p( o. i1 h
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
, s/ _4 F. D. j! s) G B' M( T R. b字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; * F* @7 m4 |. Z& C
Lucida Grande字体适合Mac OS X;
+ Y* j0 t. g5 \% `. vVerdana字体适合所有的Windows系统;
n3 R% C8 l) H5 p2 D6 OLucida适合UNIX用户 % _/ ^+ |+ a) A1 M3 K% }8 j/ h! J
"宋体"适合中文简体用户; + M" M3 `. C- L7 k
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
' y ~0 \, a8 y5 Z' z G2 H$ C, B D& m* Y* a; z, I
4.群选择器- m& M% }( F* j3 d
) ^( H; P# c }当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:' b( m$ M5 A1 c' r6 z5 a
p! u+ w; R% m0 U p, td, li { font-size : 12px ; }
; n& i( A5 I5 E- a8 k就是给li下面的子元素strong定义一个斜体不加粗的样式
2 j, [# F9 F N6 s6 E# P4 m G8 ]8 u& E! I
6.id选择器5 e0 C9 w) Z! n1 }9 A% Q* H q6 F
. b# l. B% _: M, f/ s! t, [, Z
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
/ m7 R) q0 U7 g8 {" m$ p5 J; J7 U; x* ?' S1 D( Q
, v3 [" g+ q$ v; J" ^/ J a然后在样式表里这样定义:
- t- Q$ k# j, \) p. C, ~5 [8 U
# Y, L. J* H6 O0 v- l/ V/ j$ N" w8 Q, b% I O9 T
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} * I( h I4 Q3 D# F( B
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
/ u6 V; e) m' P3 }# o
" E$ d! s! _% pid选择器也同样支持派生,例如:
; R1 D+ [# y' U& H+ z$ |+ c0 |1 t#menubar p { text-align : right; margin-top : 10px; }
" R3 p! g T# b( B; l1 J( k这个方法主要用来定义层和那些比较复杂,有多个派生的元素。5 _5 l8 Y. y2 O2 X2 |
/ I) p. H3 B$ ^ J( J3 a+ H) ?* @6.类别选择器
+ k2 ^4 b3 `9 z" o8 Y7 z6 D
# s3 f1 o" d+ L* I在CSS里用一个点开头表示类别选择器定义,例如:
% ? Z6 ]3 G# S0 k9 b2 C4 e.14px {color : #f60 ;font-size:14px ;} % z5 j4 i% i1 I* |/ _6 p
g. Z2 e0 ~" l
在页面中,用class="类别名"的方法调用:( {. U/ [* p# [, ^- _5 Z
<span class="14px">14px大小的字体</span> ( l! x) J3 p2 S# ~4 s, \2 ]
! p1 y. q! S, E这个方法比较简单灵活,可以随时根据页面需要新建和删除。; s2 v% E& {) Y9 Z. H$ q$ X
8 h- u; I4 n# q/ z7.定义链接的样式
2 W2 {2 p" F( \ o- nCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
( Q( y6 ]% W: j1 |2 l2 na:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}# x$ Y% b9 O1 _0 S/ U
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}& I L; v. {1 \- ]3 E2 ^
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}/ A' T8 t5 C1 o- z3 x
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 4 ^% m$ ]! i% ]) a1 r& _$ p: Z' \0 [
) Q$ ]5 v" N8 n( X |8 o
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|