|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
" `+ M4 k8 Q9 ~4 K
% S5 G8 a. f9 I- f- H4 h# ]1.基本语法规范
0 M9 j% Y, A! K' H; R分析一个典型CSS的语句: C6 q' |) p0 D# Z' c$ ^% \' T
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} ! i, A6 M8 Q7 O6 H8 q6 o b! [
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
8 Z. g2 ?/ Q5 `8 P$ |, l样式声明写在一对大括号"{}"中;
* F' o& ^( t5 LCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; ; s U) A, }4 v# i5 o
"#FF0000"和"#FFFFFF"是属性的值(value)。
" o- n8 D! o! _! E9 @- _/ P: E
/ p" \6 l6 B( @$ Q. N9 a2.颜色值
7 e2 A1 s6 b4 b& m- S. C0 R L9 M* Z9 V2 r/ R0 A
颜色值可以用RGB值写,例如:5 R6 Z$ o" Y! r- x' d4 L+ y, l
6 P i7 {9 t8 {) M" W
( Q. A3 d4 N& Z2 |* y* k4 z,也可以用十六进制写,就象上面例子; }5 e1 P( ~0 P5 `4 r! N% k6 ~
/ x9 F3 `2 R! K( h; U& u1 O* {9 k
. d8 v, P: |* M) A7 X. M3 W如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。/ f! d/ X; M3 p( u9 e/ f7 j. e
3 M2 d, ?9 i" m4 k! S
3.定义字体
0 g7 ^6 O# u' ?3 m% Y* C2 Z: m( e% j+ [+ Dweb标准推荐如下字体定义方法4 F" U: t3 ]$ k9 m# D# a0 z
9 E; H5 D, E4 j! B9 e6 Xbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } ' a8 c% |. O- ?: B7 }6 ]) ^$ ?
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
: j/ f" E D) V, V+ yLucida Grande字体适合Mac OS X;
2 {% M: m. w% B* Z( d# `( c& |Verdana字体适合所有的Windows系统; 5 j' N, P. i1 M4 L9 h% b
Lucida适合UNIX用户 : L" B% d( x% u. I
"宋体"适合中文简体用户;
. R. z, Q7 l/ _) f如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
* S6 X1 O& P) e# w: N/ W7 P: [) D( G
5 E9 D0 Z" |7 K- ~! R4.群选择器' G* N+ O4 _6 W. g$ {2 w2 K o
+ Y% O. A" x& u4 ^' I3 R当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:- u: l$ L7 Q6 x
9 g) l: I! f7 D6 h" t1 S5 `! C
p, td, li { font-size : 12px ; }
2 B' E) v9 v' ^ I _就是给li下面的子元素strong定义一个斜体不加粗的样式
8 v# c! @% X: {4 f5 W( M% Q8 B \- c# O
6.id选择器+ g$ u7 z3 i- O" d1 {% T/ B
8 e. e0 k& W: D8 ~( j7 W2 Z5 @
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
) X4 N, b$ `$ T" J- G6 \, X
! i$ a0 f6 `5 b# d! U$ o3 o1 y
; k9 K" s8 x* Q4 I0 v然后在样式表里这样定义:
: w: q) o+ R) w
5 X1 P3 ?3 U' P4 ^+ w* b, l0 R
8 Z' c3 e5 Z8 Y; |#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 6 h0 g6 `* q8 G: F7 Z
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。6 g0 C3 R; w- Q9 G& g
. ^2 e% p7 ?$ Z# {7 f
id选择器也同样支持派生,例如:1 u0 t3 `# t' m, ~( `' l r
#menubar p { text-align : right; margin-top : 10px; }
+ ~ s! N9 y& _3 T0 F这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
4 `$ @( j7 g* A ^& O- X- k! g4 T0 ^1 n5 L% R6 ~" k% J6 L. {
6.类别选择器# |7 U) I" |5 o5 u
# Q7 ]6 q8 I& ]- K; {9 D
在CSS里用一个点开头表示类别选择器定义,例如:. ~3 \+ V5 a- t6 J+ e f$ y
.14px {color : #f60 ;font-size:14px ;}
7 j" }! G% L. _% T2 |& m. `6 V5 L9 v, d' a# ]) i: P0 W
在页面中,用class="类别名"的方法调用:
/ c7 m; l/ b6 r8 u<span class="14px">14px大小的字体</span> : @8 {$ t9 ~8 _+ E: N
# s- Z( ]. [+ U. q4 t/ x' O. ]9 h h' z
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
1 p& a: M$ H. Y8 @1 `2 Y
; W+ }" q5 q% y% X. W7.定义链接的样式
" f2 P% W2 {! _) QCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
7 X! t7 v5 B+ w) J9 \/ n* F9 _; w+ Ra:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
* v* k/ i/ h: z2 T# ta:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
' u8 M8 D* }/ G- z+ r( m& b9 qa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
y1 r- s5 b6 l1 O1 t O$ ]a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} # {8 p* t* R; U0 q7 C
) e; O9 p5 U% L' L2 A+ d$ y
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|