|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
! s" o1 l0 c; `! h& q9 |( C. y
: }! B3 Q9 j; D' F& e+ K' b1.基本语法规范
! { y& O# S3 B) g6 _& k5 {9 `5 B分析一个典型CSS的语句:
+ [6 m5 m @+ lp {COLOR:#FF0000;BACKGROUND:#FFFFFF} # S% q2 `+ B6 _2 z3 W1 ?; |" r
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
; S, i5 d z6 i样式声明写在一对大括号"{}"中;
2 P: a, S' r" ` P0 N- lCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 3 A2 ~) b- a" a d
"#FF0000"和"#FFFFFF"是属性的值(value)。$ d; z! w' E F% h$ m
L, t$ S" \( H7 @) V* i# J
2.颜色值
3 _% [$ j( q7 R5 |2 M; s8 o
9 z9 t+ X; X9 i+ p8 Q- a颜色值可以用RGB值写,例如:
5 o0 a. w( ^5 S! W4 o
! G0 D$ h, ?0 E3 i8 y& d
5 z& b( F! f2 ]. V: v,也可以用十六进制写,就象上面例子& u3 H1 b$ Z' Q5 |9 A- C$ @
, C+ n; i1 D* G A q0 Q' ]2 z$ {
" P6 x! z1 y8 }5 I! J
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。, [- G$ o* I0 t, n/ {. [5 B/ a
- O' b Q' ~% M" h3.定义字体" p6 }" Y* i: U8 U2 }: [! L
web标准推荐如下字体定义方法! a- W1 @( y: k4 u: n# q) m+ [
+ y- N& a; G& ]0 j9 B/ D/ ~
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
' ?8 A+ }# W# u& ]+ m. o字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
/ l) f U* R$ v* k' _Lucida Grande字体适合Mac OS X; 3 q6 a8 _4 }# E7 L4 G* y6 n
Verdana字体适合所有的Windows系统; 8 u9 K/ ?+ f% ]- g0 O
Lucida适合UNIX用户 5 o. b c0 S+ z/ ]/ Y( [
"宋体"适合中文简体用户;
3 |7 l! k( w' E; b7 m1 e如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;* I3 F1 s6 n: O4 D- R
4 t, w$ }$ o& i8 L# F, k: h4.群选择器
: F$ w1 L2 p: i9 q5 X, b2 O. x, s2 ^5 }! Y% `. P) Z
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:; H5 \$ F4 ?3 J- G7 f. F+ C
! o1 Y- W3 F z
p, td, li { font-size : 12px ; } 4 D, f9 C0 ~7 B( N
就是给li下面的子元素strong定义一个斜体不加粗的样式6 B3 Z9 W3 h$ b1 x
# G6 R' O: I0 Q6 l0 t9 N- b
6.id选择器* }, f P" h1 ~( ~5 x9 b% P0 C% n
, t# K7 R) ~9 x3 L- t3 G
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
% k# Q+ N! |2 }. X' G) ~$ u( r) T7 V! Z j7 @& i" }
/ l+ T3 d% {1 h- C然后在样式表里这样定义:4 b/ w1 m1 I" ~% ^& q' e( f
9 e8 b' G- J3 [ u3 g
; l2 U0 @) o+ ]1 t( v: b: ^; N
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
' ]' B& \! _! S7 y2 d3 @" n6 v其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
* l4 q1 Y- `" u$ }# \! N( V
& i) G0 d6 l9 aid选择器也同样支持派生,例如:. V" U2 s7 R" Z& n, y& t2 Q
#menubar p { text-align : right; margin-top : 10px; }
, U) M6 G! B( O+ \* I* i这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
# c9 _0 j) C2 F% R* A3 I, e
* e5 B }- D ~* K2 y6.类别选择器
8 z7 L& g' k* t2 q, M6 I
$ I: `5 f2 l. f+ W" @9 r$ d' z在CSS里用一个点开头表示类别选择器定义,例如:+ t! t0 J' L7 n
.14px {color : #f60 ;font-size:14px ;} 5 z7 B- m1 ^8 x5 Y8 y9 f- U
9 O, B) w2 e3 p. z0 F. Y0 C* |) D
在页面中,用class="类别名"的方法调用:
+ n$ ^2 z; X- G8 r<span class="14px">14px大小的字体</span> 4 q& m8 Y: B# a$ d% `! @1 B
/ J" c2 e$ J2 T/ U* U$ v; a
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
# V( y$ D5 m. V5 j" S3 u7 o
4 y+ ]! D" ?/ L- s8 o* k7.定义链接的样式& ^9 b, t2 z$ N' z, S: O
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
$ h6 z7 {3 C7 G* Ja:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}; }' P7 |( }1 s& p1 w
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
9 `4 d; y. O. Na:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
9 }4 Z. N9 o$ T# u' x9 B7 aa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
( ^/ G* ], R% C! J. m! O/ B2 l0 Q& {- O
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|