|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。) i0 n, { V# _& }! f) v, A
X( f+ Z, l9 l1.基本语法规范
2 R. D1 b8 K/ O7 p) ]* ~/ }+ ]+ N分析一个典型CSS的语句:
- |* X3 l. r+ t6 v, \4 B1 Mp {COLOR:#FF0000;BACKGROUND:#FFFFFF}
# v/ j# h0 b! L+ X" V& Z) R其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
, o) g7 E2 C' u+ ]+ ]/ d* \: [* o样式声明写在一对大括号"{}"中;
% g2 q; E% J# c& {+ H3 ?) x9 zCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 7 I* V1 W1 K2 u' s) N: W$ B
"#FF0000"和"#FFFFFF"是属性的值(value)。3 K1 f+ e2 g) ?; D' t
) s8 A# X( O2 D- W( c% h
2.颜色值5 x- ^$ B$ o( `5 O0 r( @
$ @7 ~) O7 j: b1 C3 |1 W" c
颜色值可以用RGB值写,例如:9 P/ N* k* A' O+ b/ f( C) i
5 G$ `. F C0 g
1 @0 j4 n$ D( |,也可以用十六进制写,就象上面例子& U- G, Z) X1 N, M; i0 y
7 \$ s, m4 C" U, i; v
# E' V6 a* s+ }$ ]& l如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
/ c% O- i" V' V* ?, T
' W. p" N2 j0 `$ [$ g) W% H0 n/ |3.定义字体8 e/ }7 t% i- q
web标准推荐如下字体定义方法
4 N& D/ s: m6 l8 F; N6 y7 c
; v8 Z* |) ^0 W) C& H& N7 w- M( x- obody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 0 U3 { N% i+ y I
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 2 c& u6 ]" ?/ Y% A6 x2 f* A7 j* A: S
Lucida Grande字体适合Mac OS X;
+ \% N) {7 M; ?9 NVerdana字体适合所有的Windows系统;
8 j+ E8 U: I0 T! C' yLucida适合UNIX用户 0 }7 ~) z! f0 V1 w( U
"宋体"适合中文简体用户;
, n5 M! m4 U( D如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;3 [% z5 Q7 S4 s2 y5 e' T
) h$ \3 `0 }& f" F" U- ^# _9 `
4.群选择器+ }6 v+ x5 O7 B$ S0 _" | O
$ \) z7 I" S7 o1 C当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
1 Q4 S$ `" z5 E# O2 e: h8 h' D6 o% y& J) R* D- ]; E
p, td, li { font-size : 12px ; }
9 d2 n2 c9 |& n( P: f. G就是给li下面的子元素strong定义一个斜体不加粗的样式
' ]% _ J" Y e7 q4 X& s: t* t2 [
6.id选择器
# t0 b6 v/ i& c5 ?& N, B. |
- B' C# \" j0 j, Q用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
8 g, l1 L( @2 H" x1 G; b" c9 K. ^3 v/ A( z7 F1 A
2 c* ?! ]! T' c4 s
然后在样式表里这样定义:, P/ Q+ q4 l8 D% B/ {, ]
# q% l! A5 P9 n/ O- X! J' e2 c. {0 Z: M% \, _8 C- J, O+ J- m
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 8 o+ }1 D+ g8 a9 d3 U
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。% [: R& j3 i D. Y5 d! ~# t
% T& [1 q P5 l1 B( |" z# hid选择器也同样支持派生,例如:4 Q6 A. N ?0 s% z6 `, t
#menubar p { text-align : right; margin-top : 10px; }
5 t, L& u6 x4 r$ W5 o+ a# r这个方法主要用来定义层和那些比较复杂,有多个派生的元素。/ c. X/ C- ~. [
& J* e+ P5 ^# T8 b: ^5 h0 h
6.类别选择器
q2 G# V+ [5 {$ R( s
2 ~8 {6 p4 k+ l2 C8 }3 {在CSS里用一个点开头表示类别选择器定义,例如:
, {" A8 k9 z# e.14px {color : #f60 ;font-size:14px ;}
" z6 P* _$ j) J5 t" |/ l% T
1 u" a5 K6 [. I r- q在页面中,用class="类别名"的方法调用:
; j# U( G# e/ J0 H+ v<span class="14px">14px大小的字体</span> 4 Q6 {7 w/ l5 K3 p' F- B
7 _. A. T# W4 p9 K" o; i: D! |这个方法比较简单灵活,可以随时根据页面需要新建和删除。+ i* H+ R3 [* Q. M6 v: n: J2 C% }
5 ~, z8 Z" @) ~# u; O
7.定义链接的样式
. D# K3 s: @: @9 \+ [, iCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
. h' ?* g0 R3 }: O$ E; v" U. Q x9 ta:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
% j. x: h6 c* S* D6 Q- b/ ^. Ba:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
/ u9 I7 ?8 H% p0 m5 J0 Ba:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}. [/ V1 Q5 R4 U# V3 A9 ^. J
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 1 T9 A L$ L6 o+ @# u
7 W; g; R1 p8 j+ u) s以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|