|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
/ o) y+ e3 z- k' z! t* S" L1 _% I' n" U3 S9 b4 w
1.基本语法规范4 Z1 {' S0 W% K0 ^ ~
分析一个典型CSS的语句:$ s$ }; ^2 ^7 j" U& Z
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} ' t! ]* y$ T. e$ d8 h+ ` k
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; . \+ A3 d, E( I% Q
样式声明写在一对大括号"{}"中; " e: X0 ^" ~( T
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ! U5 |$ h3 p* A9 W( t
"#FF0000"和"#FFFFFF"是属性的值(value)。
5 d* E; |2 v0 x T5 A9 l6 Z2 B
# Q% y2 f4 W: |$ U4 q; h2.颜色值
) j$ r9 Z) s [: @4 Z% X2 s7 M' b Q/ @$ p$ _6 d1 v/ r9 `/ G
颜色值可以用RGB值写,例如:
5 y. `; W; I/ O/ q+ b$ B+ R& e1 U. d& U1 @, J
; b0 v% `! D! I3 {4 U) c,也可以用十六进制写,就象上面例子6 O: o& A; g: V2 j2 R2 v# D
6 A& V5 L( [: L# U0 G! z3 u' _/ H: ^5 Q# V: k
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。3 W, t( z. t, M
]: e- T" ~1 `- I5 {, y1 B
3.定义字体- B( v: `! Z+ P2 }4 G+ }% c
web标准推荐如下字体定义方法9 n( u( }+ e2 J7 e: f
- Z) m) K( S/ f2 ?% Gbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
$ b$ z0 X- b3 L字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
; J$ Z6 s5 |1 Q6 p. b+ g |Lucida Grande字体适合Mac OS X; 7 h; i+ B" G7 ~3 P8 n5 x" h
Verdana字体适合所有的Windows系统;
8 \/ b+ q! @5 ALucida适合UNIX用户
: o! X& y0 ~. O7 I+ Z"宋体"适合中文简体用户; - k+ U2 f: a# x8 w9 k
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
" N5 E: r- ]6 z$ f9 R D# W
$ r ]8 k: O* y) O7 ]4.群选择器
! }7 `0 ~0 b" W* U& j4 o' G
9 N, Q1 b. p$ y; n, k9 z当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
# _/ ~ ~5 J) r! U; u5 S* w( {/ |$ r
p, td, li { font-size : 12px ; } / H- G8 y: z7 o' F; B8 r
就是给li下面的子元素strong定义一个斜体不加粗的样式
9 n0 W5 x! W+ e$ l$ r1 }* K, u/ k" p2 z; z; @+ i4 V' O# y
6.id选择器2 a% P6 M7 h% U Z7 ?: }0 \3 o
/ d4 ^9 l7 J$ L, h @3 k
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层, \7 v5 o% \, p) ]
7 |8 x; U7 Y/ A4 Q+ L- l3 S
( a' Z$ }) ?& v- f! j0 T4 a然后在样式表里这样定义:' F6 x, j9 A3 A3 l
8 O$ k/ f4 m. v q2 e
& o5 S9 B2 ]# S d1 L9 x#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} , l7 g9 E$ ~& |4 @5 ~& d5 A
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
; v) |/ s: s. J. k' r" h1 C: R$ y1 }% z$ O. Z1 S- Q; k
id选择器也同样支持派生,例如:" P7 ]5 h7 G1 x- k, Q- z, [
#menubar p { text-align : right; margin-top : 10px; } ; X# O! D; C d2 |/ s: ~
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。0 w# _) }1 `; J' g
& R$ S/ W8 z/ W2 ~% W- `6 m; _
6.类别选择器
% C- a: ~9 w+ F+ g$ T+ n- s: U! C
8 u+ S$ \/ |6 F在CSS里用一个点开头表示类别选择器定义,例如:
$ ?- P! m8 k7 o, P.14px {color : #f60 ;font-size:14px ;} 0 R% P Z H0 H$ w+ r6 x5 \4 L; A* _
\4 H8 c4 m9 ]8 h6 o
在页面中,用class="类别名"的方法调用:% b1 d6 k5 ^- R% v) |$ y
<span class="14px">14px大小的字体</span>
7 T1 X& E/ O) f R6 n# O. f6 A. R; Q- n- u5 d% ~
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
, P, `$ V- ^8 d/ P: B
$ b, C# o% B! m1 P( r" \' o4 O7.定义链接的样式
, P: B3 U/ A& f, f# v8 pCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:/ @, G* `% o N$ ?
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
. q* u! i" t) N/ c- W7 M" l( ka:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
4 w% H7 Y6 e& g; v @; ia:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
$ @' R; l3 y r4 C) K* S1 C% Pa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} + j( k- o! K, _2 L) G( _! {" q9 Z& W
4 U4 B* d |6 t
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|