|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
& m; m7 L" Z+ r: P$ n7 L# ^6 C$ Y# h4 F' u6 x% W. o1 s
1.基本语法规范
1 e& G, R+ o8 a. i; G分析一个典型CSS的语句:& c4 |" k1 e* c5 }! N
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} . I& {* e* r" J) v2 w) Y. r2 V
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; % m, v& @3 i, y# D# Y. {; t" j
样式声明写在一对大括号"{}"中; % K8 M9 j$ s7 O1 x, K
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
/ |- E) Q, [5 g, H8 j"#FF0000"和"#FFFFFF"是属性的值(value)。
* c- o# n0 Z1 V# G7 o# _" R- m
% F# }1 D# `! z& o2.颜色值, L4 K$ d. p/ M! Y% s; q
& t+ r6 _) |/ j1 d颜色值可以用RGB值写,例如:
. e/ t7 e2 f4 R, L7 s- k# r$ N/ b) I$ J8 ?; d! Q2 h7 @6 S
# j" u7 Z1 k' p2 {! x1 },也可以用十六进制写,就象上面例子
0 D/ |6 S6 u- W6 k. C
7 k! h& T3 j6 N3 i% E1 G5 b2 D+ J: w8 M$ x1 }! v, S* Q" v
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
2 D6 C" w( i* K2 R) E& {4 y% i& s& i2 y; a! h$ p
3.定义字体2 `. m; _7 Y% T: `7 H
web标准推荐如下字体定义方法
; R3 a4 x8 ^! S
: S, a( F. O& N4 {body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
5 F5 Y1 P3 ^* h+ I* L/ ]: k" b, g" H5 o字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
9 F) e, Z. k3 \: ~Lucida Grande字体适合Mac OS X; # ~) ?* I! \* R5 M5 I, Z! [. Y
Verdana字体适合所有的Windows系统;
" _! S' z$ w2 X8 y( b# }4 tLucida适合UNIX用户
: k( E& s* v$ r4 V5 }1 T0 d$ O"宋体"适合中文简体用户;
% m4 P( j$ } f5 z* P) ^& L如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
$ i. y4 Z) ?8 a) \9 }
. p; x4 F) o2 z6 D4 S4.群选择器
+ \/ T+ W' V' ~% z. w/ {! Y& u8 A( w0 c7 ]4 z3 q. v
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:: P' _% `3 s5 q! i8 |( Q
; }: g F2 l5 C8 ? p, td, li { font-size : 12px ; } & w2 R( D0 Y. \1 R8 L7 ]3 u
就是给li下面的子元素strong定义一个斜体不加粗的样式
; x( O- `' O/ h- {4 D: n
' {3 O6 o" Q$ y; v. l6.id选择器* m+ @6 F1 d3 ~! U
0 H- G3 `$ N% A) G1 R用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
& C! m: I+ C. a' e3 v# l6 |! t9 a/ b+ |( [! U& S+ f& p
' g1 I4 u/ y. ^* M
然后在样式表里这样定义:
3 _: `0 h# E& ?. S5 n4 b1 |# K, M. W' ~ I% P' j. D. B1 G( ?; n3 ^0 ~
# X4 J8 Q% {5 p2 K# g5 |9 T* ]5 |: c#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ( x# l' s7 b+ |! a& [: D+ H8 f
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。% G; d# k6 R- |$ r
& F4 \* F8 n1 U7 n+ l2 Vid选择器也同样支持派生,例如:
$ h/ x% e1 n2 s9 Z! {#menubar p { text-align : right; margin-top : 10px; }
, j& x, a6 d7 v0 _3 G这个方法主要用来定义层和那些比较复杂,有多个派生的元素。5 G- E2 \0 b4 v, B, D
/ w8 H6 `1 D: @+ R j6.类别选择器4 l1 m: |- W# k
/ k+ l( C" M& U在CSS里用一个点开头表示类别选择器定义,例如:
' q" `2 i- {# S D6 R.14px {color : #f60 ;font-size:14px ;}
& k) L; ?& Q* H. S( D% r8 p# P6 Q+ n! Y) A4 `* H- y# W
在页面中,用class="类别名"的方法调用:
2 ?' l% `% o8 H4 H9 i: \<span class="14px">14px大小的字体</span> ; F/ A9 h$ j' r0 |- U
* `$ b% D& w0 G( c; d+ _
这个方法比较简单灵活,可以随时根据页面需要新建和删除。' H2 e* z3 X( i- [+ M, }; p+ w
6 n2 _7 E- {) F4 G' S5 W: x7.定义链接的样式
j. L( f/ `6 k, ?( O |9 d5 TCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
! E) u7 K6 N. N/ Fa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
4 `9 M( ~ x) p" g ma:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}0 ~$ P) T9 j4 f$ i! j( o3 d- g
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}: W0 q& S' h- |0 Q9 @5 V7 `3 ^
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
( L) l$ D6 x# b9 B8 g
# |. N! d" n1 |" Z4 N以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|