|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
8 S6 S. k$ S" d' Z" w% |8 a0 m" T* S S( b7 d
1.基本语法规范
, d6 x i' v1 K0 V4 p分析一个典型CSS的语句:
% v8 z3 {9 @1 F, C0 D# R. Gp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
2 y4 S8 d) s* k4 G其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
! R9 c- B. x1 `- G样式声明写在一对大括号"{}"中; ; a1 `0 r6 a+ i5 \ C9 `
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 9 k! D5 J# T$ d: l1 @6 w: v
"#FF0000"和"#FFFFFF"是属性的值(value)。
# m/ c& l- y4 h- K4 i! u2 P7 S# K6 e4 K6 p' h7 M
2.颜色值( `3 w/ ~- w& B; G& X: k
( s k. j6 S! H; O8 |& ~6 c0 m
颜色值可以用RGB值写,例如:
9 Z8 e* |" T, R! E" k
( N+ u, z1 |( U* m: v0 i' j
- v# h. U0 c6 |( |1 D8 J, U: e,也可以用十六进制写,就象上面例子
4 o4 w% \4 |* X& S$ M
. o* i3 {2 u' [" n& M# L4 a4 K$ J0 r0 O
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
: G3 b9 e7 s9 r5 R
, K( x8 c5 G( F; J$ e1 U( P" a3.定义字体% `- ?6 Q( O2 J- `/ T+ w5 z& g8 ?
web标准推荐如下字体定义方法
9 H: e7 k7 D; e% M. t
" `% N1 z$ N! P6 U2 Y Ubody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 4 c* U! w1 `% N" G: Z2 }1 j
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; " @9 G" Q1 `3 b) R, m1 ]" F
Lucida Grande字体适合Mac OS X; ! p$ @$ _2 @# O% S8 o5 \+ e# M
Verdana字体适合所有的Windows系统; $ q5 ?2 V4 b5 F: ?6 r
Lucida适合UNIX用户
: X, {, W0 }0 ?4 R"宋体"适合中文简体用户; , C+ o4 \: G6 m4 @
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
! ~' U. e% G! Q0 b4 d+ f' x2 L
4 I9 A I6 Z: r* l! D( I: _, ~4.群选择器
7 A+ d! l" x* z% [% C/ l$ m4 x% \
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
6 _0 N1 ^' x8 m! O3 T% e0 W0 m0 ?; S% A5 `2 _
p, td, li { font-size : 12px ; } / i1 X4 E8 `! S7 t+ h4 g) [
就是给li下面的子元素strong定义一个斜体不加粗的样式3 ]0 D- ?6 u# ^2 R0 d
# W; w6 V( ~& V) V/ U+ Y6.id选择器3 A+ B+ t) d$ t: y2 S
: ]( U! D+ z4 B
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层* H; E( g2 ~) T3 b
* s0 ^0 ?% v( X* ]5 N% t" Z! e7 W4 W1 g$ [3 \6 o* i
然后在样式表里这样定义:. X3 M2 b! ~: x/ T
( g( R+ ^7 g8 G/ O. S
5 q1 X2 b; o Z, E" O#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
8 Y1 T) O0 z/ Q( _3 s" g* i/ i8 g其中"menubar"是你自己定义的id名称。注意在前面加"#"号。* T% i4 p5 H7 p2 N2 t
/ W; ^2 U& J, Hid选择器也同样支持派生,例如:
5 @- m2 Y8 S- o- {3 _6 p& {#menubar p { text-align : right; margin-top : 10px; }
3 y! M" U6 H) Z$ Z% N- g& n, @这个方法主要用来定义层和那些比较复杂,有多个派生的元素。; J! m, X, u# O% U
# Y* b# F! X; `/ M: l
6.类别选择器- Y* a4 E& X% e0 _4 F1 L
/ O! C( S# d& I5 o+ s3 Q- h在CSS里用一个点开头表示类别选择器定义,例如:% E$ s* j% C$ c& Y
.14px {color : #f60 ;font-size:14px ;} ' x! m, }+ s) s/ `( m( b) s
; |3 Y0 e. Q: U }
在页面中,用class="类别名"的方法调用:
2 ^! C, a% x, w0 u<span class="14px">14px大小的字体</span> + }% N# X+ G7 I9 ^, D) i% l
1 f; `- y; h# R* _5 x: v: Q, K. ^1 P这个方法比较简单灵活,可以随时根据页面需要新建和删除。
/ V9 H& d9 ~' I/ i! }
. o; J, W* d& E1 g H8 O7 o7.定义链接的样式6 _* e- ^" \- L& Z$ u# s
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:; j. W: h4 ]' G- v; @/ Y, E5 t3 b
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
9 \- V% G7 _$ J: l6 b# l0 Ia:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}. `/ p( \) Y- N4 n8 F* U3 F
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}- H4 Y- h% P; c+ [! f( e6 [
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 8 o. L, e6 `; W* F! H# b
% e" V Q7 E$ A( D/ ^
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|