|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。- [) O: z: F2 B9 z. ?$ M+ n5 c6 k
' W' B9 I q, w: M$ Y9 Z5 {# I1 |3 Y
1.基本语法规范
' x. S2 h6 x; `: d% l. O. W( q分析一个典型CSS的语句:
P" F/ z0 l D6 N7 B3 Ip {COLOR:#FF0000;BACKGROUND:#FFFFFF}
& r* U6 x6 ~) s% l# R5 E其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
- l; `8 J8 p$ t/ C, a样式声明写在一对大括号"{}"中; 1 p" `/ w# [& H$ d, Z6 G
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
$ N+ K" _& {0 X& p: o3 G# m+ {"#FF0000"和"#FFFFFF"是属性的值(value)。
" F \4 f6 u* |1 x! D6 Z
0 ^7 N; Z% B' [7 b- Q2.颜色值
! c( Z+ R# u6 G, b7 C, z, N( ^& L6 O) x1 f
颜色值可以用RGB值写,例如:
, b" F& w: z& G% W, p4 B0 i7 i6 T5 K0 s7 |9 f7 K
2 ]. Q5 [5 d* y; E3 o+ i5 n) b,也可以用十六进制写,就象上面例子
( j& A! P' V8 }0 r" x/ u/ x2 u+ C, s: c! K0 y `5 i
0 x/ U, ]; r* T, o- o, C* S如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。# a" M2 X- ?# R
6 C* X% N. O% `5 K3 o
3.定义字体 i- F$ P8 Q7 L- f
web标准推荐如下字体定义方法
, o0 U6 o) S+ A! z8 E- O1 z
- [( ?. H$ K4 k w0 n7 Gbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } - @5 s0 V/ K; m) k$ s
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; " {1 O) s8 r& b# Q' w9 j
Lucida Grande字体适合Mac OS X; " C. R- m, i! U; Q b% t& D
Verdana字体适合所有的Windows系统; : ?# W0 B G3 m' j# u2 B5 d
Lucida适合UNIX用户 1 |7 z! U( l4 C- ]8 Z$ x& h
"宋体"适合中文简体用户;
7 Y& m: s& [' I2 o4 d: I如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;7 l2 z' p3 j% a( P3 l
/ C n P! c0 M y$ r
4.群选择器7 H4 }: r e9 h8 L0 U+ S$ K* m
0 }( [6 W! ?. i5 j当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:; e$ T/ `; B) M l
/ d% U" ^0 f/ u- L- q( l2 V
p, td, li { font-size : 12px ; }
- h1 \3 k, M1 k8 O1 e4 R# f8 B就是给li下面的子元素strong定义一个斜体不加粗的样式' j/ w1 ^* e! J; ^- [
4 [6 t1 ^* [ n0 Q2 @- S+ T+ i
6.id选择器
4 O% W1 X: a- S# M, x
+ u0 U2 z. Q2 g$ g z( `# h用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层9 M# o8 \- V1 Y$ A& A
4 ^. C4 u, k' _& N b
7 W* X- A& T5 y0 N- @# V* S9 C然后在样式表里这样定义:
2 }6 u- ^( D$ m. H! _
9 E2 z# v. F, S5 c
$ [9 r1 N6 O4 \8 y; d7 |: |#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} % K+ B! H1 Y4 K# I: P
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。# x9 g( D c, ^/ d
2 J6 Z* {! f( ]* r' o& nid选择器也同样支持派生,例如:* I& ~9 q2 y, w; X+ {# s& |
#menubar p { text-align : right; margin-top : 10px; }
( Y; w* ]* ?( F R这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
# v* E: M1 ?8 t" O2 a6 s8 V1 o' {
. o5 U2 I" B! R6 S. |& Z# v6.类别选择器
$ f" Q- P5 d+ q; @: \7 N5 k
! h3 A9 n3 @6 J3 g! m: M* i4 `在CSS里用一个点开头表示类别选择器定义,例如:3 u; F% t4 l8 @7 `5 M6 ~. J! t, p: P5 u
.14px {color : #f60 ;font-size:14px ;} ' `" z: b) W2 ]2 _0 y1 ]
7 l; q6 V+ T: _) ^8 k6 |9 s4 E1 r
在页面中,用class="类别名"的方法调用:
4 l" U6 ?; n$ Z9 k" W! K5 w( ~7 d% c4 N<span class="14px">14px大小的字体</span> * q9 r% Q0 C" z% s* ]
8 i l0 X0 F8 f! r9 I% P) u& P9 e这个方法比较简单灵活,可以随时根据页面需要新建和删除。
0 \& [0 K V; {" e, t, K) h
" P# \6 l2 [5 D6 I' ?7.定义链接的样式
" o9 j6 d) `. GCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
+ {. c9 g5 [8 N% s! ^a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
( H- W' i3 P5 ra:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
8 z* N* K- @. x9 ]a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}1 E( h7 i+ E. |2 t, o6 A! f3 K
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
, Q" } T* j, E' L/ ]7 D
: J i) M4 ?* e) |) M% H以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|