|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
+ O3 m" [/ ^" B9 [8 k. L. w4 E6 |8 `" g; m
1.基本语法规范! [5 {, U7 g, e& e. O
分析一个典型CSS的语句:: W0 L y% |* u6 C9 a5 p2 U; H% p3 F
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} - I* U/ t. e; ?; x$ \& e( F
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
{9 s7 G- |4 l' W# r! {样式声明写在一对大括号"{}"中;
) s+ J* ^3 V: N) t4 A% X2 [) ?COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
9 L* G2 h- g+ R6 e0 e Z"#FF0000"和"#FFFFFF"是属性的值(value)。8 Y. N6 U: n* Q% @. b- I6 m. ?: k; G/ [
' c3 k" z9 b- }( Q, A: g2.颜色值8 W3 ]7 a5 T. Q0 U! l2 K8 x
" l6 a$ I6 C& J颜色值可以用RGB值写,例如:
$ q. }4 k, l1 {) U. i" \% O8 C* H9 |8 c* C( S; g
2 E q7 p8 L, h' C D' g,也可以用十六进制写,就象上面例子$ X6 p$ W$ @ A, |+ J
5 l& r$ s% b8 ?9 z) l
: A1 `" [7 Z- C+ |# L如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
; N% e1 }+ }9 |' q- M4 j
' \/ J% g8 h1 j3 S. J6 d0 B8 W3.定义字体* {8 `" K) s# z9 D
web标准推荐如下字体定义方法# p1 _$ r3 n6 X5 O6 @* G5 r, d
3 F9 j3 n) W! y4 s# T
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 7 x- H, c+ M2 ?$ R* r6 V- [4 H% W/ `
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; . x A! g- o8 e' P4 ]- Z
Lucida Grande字体适合Mac OS X; : Q0 [2 U/ b9 h
Verdana字体适合所有的Windows系统;
) F) T, p [: d5 O5 h) }. \Lucida适合UNIX用户 4 y) ~$ K" y: z
"宋体"适合中文简体用户;
+ F& O8 W& c' V+ H- M( c' s如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;+ a$ K7 D: }/ a# R( Z( L7 R
; ]" v7 q6 f9 e; q4.群选择器6 `1 j/ ~; K4 y+ P' p
$ ?; }3 \% i8 i5 B: g5 M
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
- R+ g/ ]! ^: o* T, y
5 ? v, l& `. _) ^2 @2 o- }! r9 H0 G( N p, td, li { font-size : 12px ; } ~ M9 P4 M9 A, M1 B
就是给li下面的子元素strong定义一个斜体不加粗的样式$ y* O- X0 ^- _- X# a% e
- Y* H/ x6 t: _; a
6.id选择器* l# ?0 k' \# i3 P
: J7 s8 j. U9 @
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
; |: ^. J6 y$ Y& p( n/ E; g' n1 ^3 Z- `
2 Q) C' z2 O7 R5 G9 [
然后在样式表里这样定义:
" Z ~& ]& _! `% C5 d. Q2 S: y6 O3 K( ]: R6 i; S( @4 g
, S" @6 j* D1 v
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 4 c2 @# H+ \2 B4 u
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
( Q$ e3 ]5 A* v, n; D% c# G+ a% I2 n' a
id选择器也同样支持派生,例如:
% Z9 ~" e' [ t# O! P#menubar p { text-align : right; margin-top : 10px; } " I* e0 ^* J5 I" n$ K% s m. W
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。+ W `+ \2 S, {! U$ e6 L
1 u5 f1 }, X/ ?7 e5 X4 S0 C7 g6.类别选择器
* W; X: \+ ?! s8 w: w" o+ p+ }7 f; j& ?& O
在CSS里用一个点开头表示类别选择器定义,例如:
' x* w& m0 S1 ^. c3 R" f.14px {color : #f60 ;font-size:14px ;}
$ _; D+ n0 O, b$ F8 o9 D8 S5 E5 f
在页面中,用class="类别名"的方法调用:+ w3 l) ~6 X& j( ^
<span class="14px">14px大小的字体</span>
: ]6 e9 T8 Z7 j: k( d7 M Y2 k& ]) f" P* y
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
2 B1 R8 K: p7 ?8 Y: T+ m% P
, o5 W- R" r$ O1 L0 @6 q$ o- l+ P y7.定义链接的样式! X- `& Q+ P' T' | d. y
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
& G9 n, X B( \/ ua:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}: ?: {7 i, Y5 O$ M; }( n/ N
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}4 W- x5 L3 ~& z# ~) _& q
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 \! ?7 e+ [' ]; c
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
e4 e% r# {& i$ ^* }4 C6 Y
) Q. m- y* {7 }- W2 y: n, | U以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|