|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。- `+ l" l" I# J: z0 p
4 |) u6 N# v9 D$ \: ?8 s1.基本语法规范" q: L" N) O! g) O" Z
分析一个典型CSS的语句:* q7 `" H- j# Y/ Y* c, B6 h
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
) k* \& O8 Q9 E) e: Y其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
0 \0 C) R) v I/ ~* C9 Z样式声明写在一对大括号"{}"中; 0 G0 P' _' V. _" @( I- n1 V7 J
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
( _& C# J1 x" V% R4 `- g" d5 p* }"#FF0000"和"#FFFFFF"是属性的值(value)。
8 ~; r' E/ ~$ F# U9 D0 \9 o
4 C1 _/ b/ G. o, J' s2.颜色值8 v. o" a" y, P
. S9 P% e0 D8 ]& q. _7 F
颜色值可以用RGB值写,例如:
# W$ W. E0 B6 e1 [1 H# b6 o$ O( o& j0 U
' X! ?* a! n; s4 _" ^0 s,也可以用十六进制写,就象上面例子
# J" a, [$ ]& `% i; X0 k; |" P
/ [9 v9 R+ o9 V" ~5 q
, n& J8 g& {5 ]2 H4 v) W5 L如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。5 b" m4 S6 ?9 J W+ Z
' B2 t" G; h }3.定义字体
6 d) ]1 T7 ?2 G) d! Y! sweb标准推荐如下字体定义方法
# g) x6 Z+ B' |: o. W! T) z [+ F' v- P; X
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
7 \ B n$ I; X% Z+ W" N6 H2 }3 c+ Z字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 9 U4 q3 d. v/ f, M1 X; m
Lucida Grande字体适合Mac OS X;
8 t0 o+ L9 @# }) g7 b# j6 hVerdana字体适合所有的Windows系统; 7 w" s8 E/ U7 o
Lucida适合UNIX用户 ; ~5 z8 F6 M: D, N" t) A3 r
"宋体"适合中文简体用户; 4 p& M1 E2 X" f: O6 G
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
# h% O7 ]7 D! w( c b, b. i
, z9 t+ S+ H0 w4.群选择器
* E% n) K) |5 W1 k+ V
& A) F5 J! R# d, `! h! s! [当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
% o4 c+ @: y7 ^& I- A/ }5 F c, s$ y
p, td, li { font-size : 12px ; }
) F/ g; R# F. _' Y+ G就是给li下面的子元素strong定义一个斜体不加粗的样式, C% A; p* Y: e9 Q* r: c: a) j! t
0 w- l9 `3 ~1 J# |8 C" ~6.id选择器
. j3 f3 y1 p7 t( D9 X, {
. H& Q' u- z2 V; u! P用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层' N" S3 L3 f' t$ @
& ]- l+ U4 C+ y
0 `" J: u$ X, V/ z6 X然后在样式表里这样定义:
' y9 S* A, d* A# A# M4 S
9 s; u0 i) }6 X# j8 f4 m/ n3 e5 J( A d3 Q; \3 q( A: H
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ) Y6 W% k9 P' l M8 i
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。3 u2 D* c3 O+ u- N. N- _
0 g- v0 [& J% l; Z' b" {
id选择器也同样支持派生,例如:
/ g7 m9 n: A1 M#menubar p { text-align : right; margin-top : 10px; }
; i# [: U: D. F- ]! R这个方法主要用来定义层和那些比较复杂,有多个派生的元素。/ D# Y3 k, A4 T
/ w% }- x, B1 d. W- F. |3 H6.类别选择器! `" [4 u6 k# E3 ]. C( v& n
! v* h$ g! x8 c
在CSS里用一个点开头表示类别选择器定义,例如:
/ J) J9 Q6 z: J0 y5 X9 j.14px {color : #f60 ;font-size:14px ;} 1 m5 f; t3 U/ L$ a: Y/ |: }) Z
( q% n4 K. E: G2 \. f% h8 ^. v在页面中,用class="类别名"的方法调用:
4 o: U X& y, e1 d+ |# [<span class="14px">14px大小的字体</span>
7 w2 }/ r, T+ C2 A7 X
! z* ?0 N& T- A2 s; b; R& P这个方法比较简单灵活,可以随时根据页面需要新建和删除。
! {6 o) }+ U/ ?; r
1 Y N/ y# J4 t. ~% ]8 H7.定义链接的样式
{; P* P, _" cCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:/ i- R" V* A1 V+ F- t$ O5 w# G
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
M' X8 H* ~7 T1 L; Sa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
- h& e- E/ U/ x/ va:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}- o6 ~, a4 w9 l* s9 Y! Y9 m
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
# X1 D' O5 A( u( |: S
6 K( E8 H" [8 U: r以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|