|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
8 a% A4 g' j8 _# O/ X! s0 { W) u) d! `. i' P4 W
1.基本语法规范
# X' D& f" K, r' p. F" c, p分析一个典型CSS的语句:- ~! |( T. @, O1 `, V( A/ L% B q
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
7 Q8 d7 A, F1 r' k, A2 k0 t其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ! n3 {* I& O6 u6 D" U( l
样式声明写在一对大括号"{}"中;
& |7 G& F* V. ~/ G7 {* t# |COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
z& F c8 L" ["#FF0000"和"#FFFFFF"是属性的值(value)。2 g& n: B- s& t2 ?
! ^; F6 U" M1 _: I$ s: a+ O) {3 y
2.颜色值
" u& B" _0 Q! F5 q# y+ H( O; E3 Q9 x. }3 ]1 k. _
颜色值可以用RGB值写,例如:
5 c% @: l! J# r# ?4 q: J
7 ]7 B" U4 t+ ^/ y
0 h, p- U+ [8 V1 Q5 [ J& `4 A) K# m,也可以用十六进制写,就象上面例子
0 o' h# N. y: T; c* Q& c' O9 X( p9 l4 r) J
2 S+ t' Y' `) o! ?' _0 m如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。! Z$ R! K6 c: E2 w4 ^" v+ [/ m
: r5 o q# [' D
3.定义字体
n- k' `. z6 w6 _9 C' t) ]1 Qweb标准推荐如下字体定义方法
* W, O, h2 X$ h: H( r' q! u9 D- `2 B3 T: ^
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } ) D; t3 N. G# r8 C. ~
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ! y% f+ j2 m! n6 I7 N; p% D8 x
Lucida Grande字体适合Mac OS X; % {) G7 b8 v: a4 G- ]
Verdana字体适合所有的Windows系统;
! _0 |5 [) n% R% B! T9 ~Lucida适合UNIX用户 ! i1 h7 M2 p3 w/ \
"宋体"适合中文简体用户;
, H/ d6 E+ ~! R2 |, }4 \2 N如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;; j! a% m: I0 e# G+ j$ v$ ?
' ^4 A" u* Z+ E h8 y& \8 C4.群选择器% [5 S0 c; i. }2 r8 g9 K
2 p7 v+ q$ n- ?/ n, O# s' z! {当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:) F) h k+ ~! H _, l/ w6 A
* g8 L2 i4 s+ T p, td, li { font-size : 12px ; }
! b) d, M% j' [' [8 P就是给li下面的子元素strong定义一个斜体不加粗的样式
2 y; ]0 y$ e8 e# a8 H7 k- H U. _ a7 r; _5 B. b: S
6.id选择器
% C* w0 f7 v, C% L2 z7 j, X3 ~$ O
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层3 Y! E1 r+ e* d: d5 |/ K6 E
6 i& p3 R( q/ k4 \& ^# K
& H* m! k9 p: _* j
然后在样式表里这样定义:
M# w( B- v4 A' A6 \6 ]+ X/ W- {- @- d0 z0 |+ K$ ^4 q
/ C+ j/ a4 M' T8 b9 S5 {#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
4 ]# A* r! E- R# C: C# r6 P其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
( v3 d9 ]5 p9 _; C! Y
' x4 C3 a' W- T+ d5 qid选择器也同样支持派生,例如:
% y7 g: y+ Y' {2 W$ b#menubar p { text-align : right; margin-top : 10px; } 9 M n. y/ W! G2 @% K! s# u
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。7 M; P! ]( A& q; y P; @
1 }8 a. y' m) i6 `3 s6.类别选择器
8 p U4 t: x- k- n- N& w4 K2 ]% T8 A0 Y
( g( b9 L4 @& p: N* u" x J在CSS里用一个点开头表示类别选择器定义,例如:
' Y, O/ T" z( P8 H.14px {color : #f60 ;font-size:14px ;}
, d. N- \% _6 t
2 K# Z- `8 Y# B在页面中,用class="类别名"的方法调用:" B7 \/ [4 [$ z2 J/ K
<span class="14px">14px大小的字体</span> ) k+ j8 K7 C1 m/ W
; F- G3 L, D8 a6 e+ T
这个方法比较简单灵活,可以随时根据页面需要新建和删除。. ^- x9 n/ v* [& j6 G% h
7 V: r# u. S+ R) l7.定义链接的样式4 f4 j. r( S/ O9 r
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
; @1 `: W4 m& y7 \3 C# Ja:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
# T H8 t% U* K9 a: T' qa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}' A; U5 X! W8 A. U" Y
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
$ ^ m$ W0 w8 T4 Za:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
% y) C+ G) G: |' c" p) }5 h
; n; k. o; ^6 N6 S7 U以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|