|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。+ P( }; O6 Z0 `" g/ a' Y
& g0 J" J" d1 ^% z1.基本语法规范' }4 `7 a: K2 e: H8 c* D
分析一个典型CSS的语句:
2 B% @8 r: z. f* y8 B9 @7 Y+ X, up {COLOR:#FF0000;BACKGROUND:#FFFFFF} 4 e0 y% j9 w1 g1 V- `# w+ f+ b o2 O
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ( x2 F( H$ Z9 [ K" S
样式声明写在一对大括号"{}"中; 2 O# h; `* H0 Q# j/ {. d! i
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
' Y% r O4 M8 h( u' D1 W' a8 x, a* w"#FF0000"和"#FFFFFF"是属性的值(value)。: K' o V) D6 Y4 e. {
7 U3 c! \: S" ]' P4 ?6 m2.颜色值3 c7 Q/ F( W# k' t
; k! C! [3 J5 G" n/ f! B/ r
颜色值可以用RGB值写,例如:4 @- F3 w) V3 q7 S: x* V
# h; I7 O7 H, P
' e/ ^4 u$ ^" _ s+ c,也可以用十六进制写,就象上面例子/ h5 [ p: L1 B1 t
2 r% D2 x, J3 G9 S/ ?
/ b. A) X8 |. f% F- C$ ?
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。; F% ?$ k) a' {+ B+ P/ X$ u( O. |2 l
7 x+ X5 w) D* {# e3.定义字体
' u, K5 z( L. [web标准推荐如下字体定义方法
) N" {1 {& Z. I: _+ S* G
6 q8 ]. d/ n4 }( ^0 _& Z# z* ~4 Ubody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } $ H E7 g7 ~6 D) B* F* V
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 2 Y9 b5 |& Q, H, f' S, z, x U* x
Lucida Grande字体适合Mac OS X; - a0 ]) n" @/ Q2 Y4 ?! g5 u( ]" ~- M
Verdana字体适合所有的Windows系统;
6 G' v/ z, {6 I# `% _1 V! w( cLucida适合UNIX用户
) U7 {: P% x+ t% L"宋体"适合中文简体用户; 6 W4 W" J6 a- l; |
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
9 a5 V9 H% V7 q7 \- R
4 J2 R5 t; e6 g. w0 h; o \9 ?6 D4.群选择器5 j" @& [3 I; q& `7 R/ X
2 l0 y& l9 e; z1 Z/ e当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:4 W/ K) q/ S% F+ o
0 q( h; x5 z2 |4 {" l8 {. U
p, td, li { font-size : 12px ; } 7 L, @# \$ y9 I' ^
就是给li下面的子元素strong定义一个斜体不加粗的样式
5 e8 Y8 x3 l9 T- n
p n: @9 v' [6 u6.id选择器; m* q) X( [% c4 ?
* H* {; Y+ b4 ~% E
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层; d% R1 `" D$ e1 Z8 R
7 k" [* C" T r
. v( W# b% @% j7 J. N然后在样式表里这样定义:
# R! ?3 g7 Z6 t) A) [' h' Y
* H) s( J$ v# Q: O6 J( N- n' f$ ~4 J$ z, {. V
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 4 h1 f, F0 T) g2 E! k5 v
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。9 N8 o( I, r' U4 R" p: b* j
5 M7 Q4 ?8 ]- Q% d" qid选择器也同样支持派生,例如:
* c7 a1 [5 }2 U: G: y! g3 [' r6 I#menubar p { text-align : right; margin-top : 10px; } 9 {, w+ ?$ q1 B# `; _) m, O% ^
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
9 v! Z/ H% k$ l9 i; Y) z4 v
% b, v5 Q9 P: q6 S9 Y% {5 K) D- ]6.类别选择器
& N- A& X9 J; x+ R' b+ d& g7 C* [9 x5 n% T+ F) s
在CSS里用一个点开头表示类别选择器定义,例如:
- ?3 [/ v8 T) h/ d- ~: D: `.14px {color : #f60 ;font-size:14px ;}
& M, p( Y V, @7 @& T9 V! l4 s7 z9 |( c. Q. B* @+ J/ B9 m
在页面中,用class="类别名"的方法调用:% @% `9 X O7 K
<span class="14px">14px大小的字体</span>
" x/ \& L: \; D% H
% O/ j0 b: w* T6 B! ~这个方法比较简单灵活,可以随时根据页面需要新建和删除。
6 h" g& Q9 Z8 p0 M, |4 S& e5 @ D" A: a
7.定义链接的样式' b, H. [6 {% B6 x) d6 y0 g
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:8 }' U2 M" n5 M& E" P& a
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
, k7 h F$ z% E$ j% r8 Va:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
- _- [( z v" fa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}2 {1 R& e& v( B# C
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 0 U; Z2 M6 o' F$ f: K/ t. {' Z
& |+ p) f7 ?0 {* g* l以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|