|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
5 K6 b2 B& j0 O" ]$ z, A2 P4 p) N" L& u6 ?" @
1.基本语法规范
- x% t7 ^5 p$ M2 m, _1 y分析一个典型CSS的语句:$ n* v7 s, W% f2 D6 @. Z
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} ; x2 g' z! K( z( z( X* P6 c+ M) X
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
& ?# _! m8 ^5 c7 R, F$ p2 ~样式声明写在一对大括号"{}"中; 9 v6 O% j9 T; n/ l6 D5 p3 G3 Q
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
& d9 i% j+ R( N"#FF0000"和"#FFFFFF"是属性的值(value)。1 h6 x' n" ] n, \0 V! t8 r( j
! U- `4 e1 _/ l; [7 Y9 z2.颜色值
& \; s7 P3 Y% K2 U' M! x# Z+ g$ Z9 _8 J6 ?
颜色值可以用RGB值写,例如:
% c( J: j* A- k3 F
! R5 ]& N! n3 ?: \4 j& G% s" w7 b7 ?6 @
,也可以用十六进制写,就象上面例子
, r7 y! P# c* y. P R6 f: c% p2 n( w8 m. s, w6 E7 \0 v
( D8 h. e% u5 F+ }9 T, r# c如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。: L' L) B. C$ t
' D3 Q9 c1 _# u/ ]6 K1 y+ f4 h
3.定义字体
; h% S! u( k. `5 S% i6 C) zweb标准推荐如下字体定义方法
. U% Z+ Z. {0 S
7 x$ K/ e; x+ M% D) G; q$ |body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
- }7 G, K4 P6 b# @字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
7 F8 z. D8 s9 PLucida Grande字体适合Mac OS X; 3 m) h/ ]' a3 ?! b8 c. c' i
Verdana字体适合所有的Windows系统;
8 Q/ Y3 N8 n/ X( f# ELucida适合UNIX用户 5 N4 k) u: J. F: m. X- p5 p
"宋体"适合中文简体用户;
9 @; Y0 ?( b! d* B% t9 P+ C如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
- l& W$ J1 X# b( B) H$ @* M7 n" t4 Z$ j
4.群选择器2 W5 R8 z9 }* j+ U2 b, I
7 t/ }1 ]3 b+ |$ i# W* p
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:3 [0 M1 y+ |1 a$ r7 X( a
. W) A! j: F- n) m( b
p, td, li { font-size : 12px ; } 2 P/ B* d H7 V' n
就是给li下面的子元素strong定义一个斜体不加粗的样式3 t' ?5 f- Z, Y
8 q' i5 ^, x. G* b2 j! [% G$ x
6.id选择器2 K! [8 l/ x6 M& i! {" q, I
6 ]- `" l7 v$ A1 V" A用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
+ q0 d G) Z: h0 k. v/ E9 K6 _( o' h. ~
* B( g8 F( A1 V: z' j3 f/ Z
然后在样式表里这样定义: e* ^3 s! z4 T6 @3 c9 F' K: i
: a. Z7 T5 s- w1 _" L/ q- u
0 X4 y7 n5 y. K5 p* T" l#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
( y3 {; L* a7 H- b其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
8 ] X) C5 N4 V! z! }: S; s! a7 M2 i, p* q) R6 ~4 C( k
id选择器也同样支持派生,例如:/ i: |/ C6 I1 h. s
#menubar p { text-align : right; margin-top : 10px; } 9 @9 M1 c$ s2 l$ J4 }) D
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。: H1 f8 t8 Y2 J& Z, t
( F4 ?7 W) J, K8 @( Y$ ?8 X6.类别选择器0 `1 k9 c/ _* W$ v I9 `0 M
6 @, x7 G+ h8 b6 ?
在CSS里用一个点开头表示类别选择器定义,例如:
+ O2 o: Y" B1 e! L$ f; B.14px {color : #f60 ;font-size:14px ;}
; `3 ]1 Q( e7 ^+ G' I$ K0 @* k/ f" D0 R0 b9 u
在页面中,用class="类别名"的方法调用:* }; `- |& ]) Y( |
<span class="14px">14px大小的字体</span>
4 |% n7 I9 ^( k4 o4 B% R" v' R% x5 j; E0 `; A" a
这个方法比较简单灵活,可以随时根据页面需要新建和删除。) ]4 A# S8 A1 ?4 I& Q# H$ ~
" P! W5 S. u1 I$ R5 _3 U/ A8 i) X7.定义链接的样式
; X" {# T7 J& }* e! Q7 QCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
; g% u. w: L8 h5 @1 ^* Xa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
8 J" h0 ~2 G0 Q3 r$ p1 ?a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
& R ]% C) g% e- O: Y) \a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}4 H, x3 W/ d( k$ F
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} * b; C/ u3 j/ f3 i, K+ C9 q
' |( e8 M7 ~# w# y! \" h) b
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|