|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
- e3 E1 P) n" l% A4 r3 ?% b' _9 T) g7 }- B2 a9 Z) x- x. ] d
1.基本语法规范
( k4 X. u+ D1 Z4 m' H1 j, J# g分析一个典型CSS的语句:$ X4 p. T, u, R8 M
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} " f2 B7 b* P7 D4 y) ~" h: y/ ]
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
% `; O" r* Q( M; r7 ?/ `样式声明写在一对大括号"{}"中;
2 A. m4 R! G4 h% c9 oCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; % [; p( u5 w3 m, E
"#FF0000"和"#FFFFFF"是属性的值(value)。& H0 A( t4 p X+ E& D# Y
& @; S$ b8 c ?2.颜色值
: z+ |. o) a+ `+ @: t' o3 h& i; q. m0 ]4 k1 O6 Q) |
颜色值可以用RGB值写,例如:% l' Q9 a2 H% I
- r/ g: C; y! D {2 f. ~, I; V: @# ^. u" A6 ?9 d4 i2 i/ o
,也可以用十六进制写,就象上面例子. S+ _5 j3 R4 S) T {) n) j
3 ~4 e% T7 s# R! X
9 s5 Z" o& [/ t4 U2 O2 i, P如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
! y7 ^6 I0 ^ ~1 ~' m0 C2 {
3 Y% Q2 a; S; c( h v1 u2 K3.定义字体0 T2 | m9 c& O! b/ y: Q. A
web标准推荐如下字体定义方法
7 R$ u5 y8 W- V/ m& h$ ~: K6 u/ |: P5 g* A2 ^
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } % X6 v( |" s: B% k: Y0 |. n/ u" ~9 H
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ( M+ }' `' g5 T" U
Lucida Grande字体适合Mac OS X; 5 p: h+ G) \1 Y) D4 F
Verdana字体适合所有的Windows系统; 8 D9 h$ Y8 {: }- p0 B
Lucida适合UNIX用户 9 P! Q: N$ R8 x8 [5 z7 x2 }( L( G
"宋体"适合中文简体用户;
$ M4 P& O$ t2 s1 \% |+ k o如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;2 y+ E( z1 q0 r! {0 R& ^
5 _/ h' F. B7 b4 C5 T1 r
4.群选择器
+ u( r8 U$ Y4 w# v/ t9 R" U' ^8 g
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
J9 ]8 ?5 T+ u
! y4 d: T1 Y, t& C p, td, li { font-size : 12px ; }
% f! `: n5 s+ H7 D) L! H5 z1 U7 S% k就是给li下面的子元素strong定义一个斜体不加粗的样式# A/ r8 M$ y: E2 U0 m1 P+ ?' Z
7 L* }" t/ H3 V' S5 P6 K9 V6.id选择器6 Q/ F" X1 C: J9 ] n% N
' p5 J3 f4 N! S" j/ T用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
" ]" P4 |) p6 U
" j0 N1 @4 z$ b9 F" Y
( J5 L, r% h l Q! y: y4 D然后在样式表里这样定义:
3 N5 V4 _* g' `
- X) M' s+ ] c3 Q$ Y# i {8 v$ e9 b9 @& J) t9 ]' e
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 6 k; p+ r& N; q6 A0 g
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。% }( R7 Y! T8 ]" P4 ?; U. r1 ~
- d$ i# o2 l+ _2 {+ x9 O
id选择器也同样支持派生,例如:4 g5 {4 q9 e; s( i, w
#menubar p { text-align : right; margin-top : 10px; }
+ }, K% l( \3 B+ n( L) {这个方法主要用来定义层和那些比较复杂,有多个派生的元素。3 I/ z) i1 ~) o, v
" `1 b& A6 {0 b( }! e+ t- U
6.类别选择器# `. B" _: h' C& T# ?, k( C1 J$ b" a
4 l3 R& `) ^4 i# | |0 {0 P$ I
在CSS里用一个点开头表示类别选择器定义,例如:4 s4 E. b5 m! D8 I
.14px {color : #f60 ;font-size:14px ;} & W( a1 K+ ]# L7 v& X
* N) C! d& w1 G% g1 N5 I6 D! x
在页面中,用class="类别名"的方法调用:1 F3 D" f5 a' N. g( r' y$ w5 |: [
<span class="14px">14px大小的字体</span> ) s0 G( w y- R1 A6 v8 H" l
^7 x( k) Z+ a Y% Z6 ^这个方法比较简单灵活,可以随时根据页面需要新建和删除。4 b7 [7 I) E5 n# L
. N; E( A3 f2 h( S, C ?7.定义链接的样式0 R( c2 D2 U2 @+ }* Q" G
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:4 A9 |3 n% L; _4 @
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}- X* I( |) i. E7 ~
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
/ A% {" I2 E1 Ja:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
6 }; L; Z/ I/ f! }4 e1 _$ |a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
; R# }3 L( J" \- p2 u" z; x) ?8 {2 \7 a- ^ S$ \0 s) P( k+ b1 L; U* t
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|