|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。$ D+ e7 k- u/ d' x, T
2 ]# |/ q& N0 G8 \. D, w. u1.基本语法规范
L! b/ d, }1 d z分析一个典型CSS的语句:7 f! C- s2 C3 w1 r0 [. {/ ^ g
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
$ F( E9 K' [6 ?/ O7 y0 D: L其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ! K3 D( N( u; b$ z* }: `: b8 g; c
样式声明写在一对大括号"{}"中; % }' o& q7 I& z V! g# U; Q
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; " D) d% W9 T$ Z$ h8 ~7 Q' g) F
"#FF0000"和"#FFFFFF"是属性的值(value)。2 u" T" C7 ^5 r6 j1 ^
5 M: m3 z' y8 A' I% B" U2.颜色值
9 e9 { c9 N) t$ f7 S2 H; C" b! I* N# `# q) R7 l' Q S4 `1 ~
颜色值可以用RGB值写,例如:
" _: P y; D7 N8 ]/ S
. n2 n# _3 H, h; U2 }2 D! @3 d0 K5 _8 K) R- J
,也可以用十六进制写,就象上面例子# D* |5 {; L+ T
/ d" S3 X j9 Y5 i# ^4 z: E' X- g# E9 l8 k
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
! f% p' r1 _ d; v: q( m& f: ?8 n* F; @1 K
3.定义字体4 j' S' G0 s- Y4 j0 G5 X! ]' C( D
web标准推荐如下字体定义方法# h/ @% H' {" P% x& S, }* c' O- U
4 n1 B! j8 p2 c$ Y
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
# F5 w+ y" q, X- G; v字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 4 n& I9 `' k! q1 n* a8 C7 U( v) K6 R
Lucida Grande字体适合Mac OS X;
' f! {$ N" ^) X7 gVerdana字体适合所有的Windows系统; ; R: s% e) {8 j) b- l4 ^! D* E- {
Lucida适合UNIX用户
3 N6 i; t, N( } V1 W% O' i9 U: ["宋体"适合中文简体用户; * p( d9 W$ A7 u1 q; z0 l
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
6 E4 I: }9 ]2 q, s+ ?% b: |& H
g$ _! c8 D4 b0 B- C4.群选择器2 [$ m9 p" l1 h; `2 T1 V
$ V- X( D! Q' m. y# [. O+ |7 v( p
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:8 d1 _& [1 m$ P1 W, U, K. ?
2 z* \+ `9 s6 G$ y. x. M6 f4 v p, td, li { font-size : 12px ; }
% T! w6 j) j# L就是给li下面的子元素strong定义一个斜体不加粗的样式
: T( `! ~$ X0 ^) g* b
; w9 S( ~' [& a3 U$ k; ]( F6.id选择器$ d1 c" w( |; J# d( w; M/ w0 ?
! w! ~, }: ~- I) S& S! _* p: U# a用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
' x5 ?3 m. c9 k8 V0 H5 J* ~9 f1 z( N V# b4 v
& k* J3 }) [) \: J4 Y
然后在样式表里这样定义:$ c, S5 a7 }; G; v4 q
9 g( L5 k& I1 c+ `, E
7 u- A3 X2 x0 N! x8 z5 w. K#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
4 j; C1 S1 k! F7 m% N# O其中"menubar"是你自己定义的id名称。注意在前面加"#"号。% s7 _5 B0 l# P" \# E
0 R' H" U n' M! ~7 zid选择器也同样支持派生,例如:! N' v- q r1 a" {& w2 }. u
#menubar p { text-align : right; margin-top : 10px; } C, k) R7 v5 C2 v7 e: Z
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。+ C; d0 N9 o1 V. j7 j
' j8 ]! T L4 \9 q" }. y
6.类别选择器
0 I, D, ^2 L, O: r8 A3 i) S
3 { U' S7 v( R7 ?* I6 P: H在CSS里用一个点开头表示类别选择器定义,例如:
) @8 H- X' D1 W7 i9 B.14px {color : #f60 ;font-size:14px ;} * v8 X' V( R" R" u
; |+ @/ q; I, s3 @在页面中,用class="类别名"的方法调用: S+ N/ A; ] A3 _9 k/ @* H" K
<span class="14px">14px大小的字体</span> ( {! P, Q$ L& w# H
& O! w4 p3 S- L- s2 ]) _% h1 {
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
9 k( U! W6 t/ `7 h% o5 y1 o% j/ Y
7 Q3 n- Z' d+ x7 a6 Q+ [, w! o7.定义链接的样式' D s% p, A$ P. p/ H( {5 r
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
s( r& L6 I3 Y3 ` Sa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}/ ?6 \% U; Z/ A' S- o5 ^0 m
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}) \# M1 r; R7 Q" p1 d! D
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
( j* q$ K9 A2 c# Y2 \: wa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} : O0 j n2 Q8 T
4 P0 Y! D' d5 N1 t9 U以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|