|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
+ }: a+ N6 e5 K) T! n( T3 y' x4 x& I* {0 u2 C x
1.基本语法规范. e; f( o6 v: W9 ~3 R4 {$ m, Y
分析一个典型CSS的语句:- O/ P/ k+ f/ W1 @' j8 N( E7 S
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} I: A, \2 ]+ a! d- n% e9 [+ }
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
7 ?+ U9 k) k3 u0 B0 C* |' E样式声明写在一对大括号"{}"中; ; |8 Z y% l: {
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
& | A8 d9 Q4 y. X+ `, \ z: g( a"#FF0000"和"#FFFFFF"是属性的值(value)。
" e% J5 U5 n( B a- g0 X. n1 B O+ R# F3 ]
2.颜色值
6 |6 r3 t- C" E9 x _/ P5 w3 n9 L0 W! U* Y2 r2 z- t; z/ P
颜色值可以用RGB值写,例如:
9 ]5 A$ b d+ K+ n
2 v) o$ D: t N2 n
! x7 j+ {4 G" k" m5 y. d7 g,也可以用十六进制写,就象上面例子# m# R) a6 }- x- J. P3 j# e
4 }: Q1 A/ ?, I2 O1 @( L, h" K; c! O. ~) \( Y
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。* ^3 \/ [1 _5 F& b5 \$ R
K! ~- B6 }+ x6 J" T4 q& k
3.定义字体1 O( f% D& a: L5 j( p+ \
web标准推荐如下字体定义方法
, s9 m. \ e0 K, z3 i' ~
: N9 k% P: _: D+ m7 `0 {( ], b, Bbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } / S$ d# p: `4 A0 M2 \
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ' N4 x* F7 X, e: r* y6 y. M
Lucida Grande字体适合Mac OS X;
K, b$ r9 Z+ Y1 @* uVerdana字体适合所有的Windows系统;
$ `( l7 s7 z1 N% z' fLucida适合UNIX用户
+ ~1 S- s4 P' K+ C# K# \"宋体"适合中文简体用户;
0 D1 g; r7 o/ Z3 ~如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
* Y2 v$ p8 [+ p, e
/ u4 P4 M1 X ]& J4.群选择器+ B9 g2 p6 o& [5 U
- p" T, X$ ?2 v; Q' _8 n9 q
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
" ]$ M& r% \9 ]5 |
0 ]+ ?. I8 w9 j$ q% a p, td, li { font-size : 12px ; } % G7 Y6 t' [+ d( n2 h6 T) p
就是给li下面的子元素strong定义一个斜体不加粗的样式( ], I! o6 G5 T& v# L& A
5 n) ^& S _) O D- n9 O6.id选择器( N, y E; |& O. n! R5 F9 w
( @4 O' n& l Y5 x4 E' |4 N' b用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层 P5 \1 ~+ \3 T1 G* N
5 Y1 M1 M2 f% w! r+ c8 }7 v' V" W( C1 q) C1 i
然后在样式表里这样定义:+ f4 j* M3 g1 X9 |8 V: ?
6 [, j. _6 G% q$ D; o
+ O) F7 m" A3 R( g* L' J" L#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 7 m1 X! H+ @8 J$ L
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
; y) e6 S1 @! D p" R
( o8 _) _& F2 K2 T6 i# ?, X/ Oid选择器也同样支持派生,例如:! y7 M& o" Z4 N. R7 |
#menubar p { text-align : right; margin-top : 10px; }
/ y$ E3 ]$ O; z) q* ^! K这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
2 ~* D- K. Q E* |. l8 x3 {
1 g7 o1 \* {# { \4 W8 F+ T6.类别选择器
2 m5 P8 M6 U" ]2 M2 e
/ e0 n9 L7 F0 M" w9 g% Y在CSS里用一个点开头表示类别选择器定义,例如:
& ~9 v$ ~, l, P: a( o$ W' \.14px {color : #f60 ;font-size:14px ;}
6 {+ q9 R, v% M6 z5 D
9 N" u, D' b5 l8 s* u; z在页面中,用class="类别名"的方法调用:
8 E( t u, Y, x' Q/ h<span class="14px">14px大小的字体</span> " Z# O; S# r( g( O$ W9 ^* {3 G
: B' g: |$ l2 o) J
这个方法比较简单灵活,可以随时根据页面需要新建和删除。. M2 U m. x' H; z2 P, r& G
2 M6 a& x7 g/ Q5 ^. z5 ]# @& A
7.定义链接的样式
% B, f k/ Y0 fCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
0 q5 S# z( ]& n# |$ K( K- Ca:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
/ f/ r0 n1 y3 v" f' na:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
# @. {* B2 n, }9 J9 A$ w7 Ra:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}/ s+ g, v: F, P! e$ [ L1 i- ?
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ; I! B. e/ j% g8 H5 t- s) q" a3 x
, \! X' \0 g8 Q6 | y+ n+ K3 R1 D; e以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|