|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。* t$ d% m9 d5 M( w
) P: j, {# c/ Q T# k& M1.基本语法规范
+ P' }. Y- R% g( p) N分析一个典型CSS的语句:, V! H5 R2 Z4 p, m4 d
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
1 z/ L: Z: e5 T0 g. `# Y( }其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ) g1 ~5 {2 Q# ], b7 u
样式声明写在一对大括号"{}"中; 4 V) V5 ^# V" x: v, _3 y" E+ m. |
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 1 S/ _$ u; F; C8 ~4 Q: ~: W
"#FF0000"和"#FFFFFF"是属性的值(value)。& {2 U ]6 l4 j/ {( p
/ V( B. {: K& ^& j8 s5 ]2.颜色值
% D' O/ _" {0 l8 v' i1 _9 U7 ], q
颜色值可以用RGB值写,例如:) K# H+ }# H8 Q
- I) d- a) o$ O8 l7 M( g5 S
/ @# `8 Z* N! r$ K: T. v6 h,也可以用十六进制写,就象上面例子4 n9 H0 N0 x# S$ u
1 y7 B. p6 ~' z# \, z8 k
" v0 c5 s# m' O- @: M5 X1 d) I. |
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
! b6 J3 V/ N% O/ |+ I9 x' o- ~( ?$ T, p! @. T V8 g) A
3.定义字体. m, h! y) |; P
web标准推荐如下字体定义方法( ?, |7 p/ Z, V" t) c4 x
& Y# t, @/ z- N: D: ~9 |" a, J; C" l
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 0 h9 }" r% ~0 `4 p6 z
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
1 g$ g- f9 k5 TLucida Grande字体适合Mac OS X; 1 j5 S$ E% ~, _ y6 N2 O$ F; g
Verdana字体适合所有的Windows系统; 3 p" W# c ^6 h' I+ S. C: E
Lucida适合UNIX用户
# o0 ]3 c. M6 M5 [. \"宋体"适合中文简体用户; 7 L- I" ], C3 {8 M5 O
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
7 T( Z n" F! Z. \1 \8 t* M9 Q# R0 e! E% W" G8 T* |; X5 C
4.群选择器7 X3 C6 d! j6 W' O7 C) y& q
) U# @4 x/ S& K; b
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:9 g5 i4 k+ I ?! J
9 B% r1 g v/ i- F8 D$ u6 Y! V6 |) D4 i p, td, li { font-size : 12px ; }
( i. }5 V5 t" m5 M( v: S& x就是给li下面的子元素strong定义一个斜体不加粗的样式
8 {- b. J8 N" [3 E* f5 Q" c/ w9 u; Z, F& y- v, c9 Q2 B3 v
6.id选择器! g0 W/ L* r% [; E
! `/ b4 O! {5 @3 I用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层0 ]3 u: `( B7 x- W
. [3 j1 _3 w8 Y. L& e6 y( J9 U0 S
2 L$ X+ x3 _" X, m然后在样式表里这样定义:5 o& @5 y' l4 x. T# s4 B' u( c. x
) c1 G4 |& Z. @) C7 r; t8 H/ d
( u% {. F6 Q9 K1 y% O% `#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} * _* h+ T" w% a5 T E* E
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。0 S' E' p, |# ?: T! k
/ {1 B9 h! b/ b# E' u
id选择器也同样支持派生,例如:( j, w8 h3 h0 w0 W( I: i
#menubar p { text-align : right; margin-top : 10px; } 4 ~9 z) [" ~2 _. g
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
p" `! E* F) V" h
4 X" }8 u# F, i/ D. [6.类别选择器0 w( N/ Y: B( b$ u; @% B
. o$ C; |% L+ ] C; D* ?在CSS里用一个点开头表示类别选择器定义,例如: u n# z; @ ]: n/ M9 |
.14px {color : #f60 ;font-size:14px ;} ! {# m1 Y! {) F/ m" Z
+ Y: b* ]4 ?/ X在页面中,用class="类别名"的方法调用:
, H7 d5 X9 O* c. o<span class="14px">14px大小的字体</span>
, M! \7 N V7 S
$ S" w. ~5 y: b+ J* y* S. `. _这个方法比较简单灵活,可以随时根据页面需要新建和删除。! X& r5 w) Y, E+ n
0 p2 O, j- i0 Y3 J2 F% x
7.定义链接的样式
}2 {4 ~3 _$ E. Q! t$ z8 lCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:1 Y q* \5 K' L) m* N7 l/ V
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}# |) N+ e$ |5 w+ R: Q5 z9 M
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
5 Q. r! e ^" da:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}4 F4 c' }- A4 n
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} * u9 K# ]+ [) i3 y# ?* V+ {" ~$ X& _
7 p$ h4 V, x: b5 `以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|