|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
! b) V% G( \9 H3 M! I5 H/ k3 {, K9 F8 W& ]
1.基本语法规范2 E: c4 Y0 P3 P$ x0 h9 V* C Y# G
分析一个典型CSS的语句:, ^8 M9 i! x6 I$ Q% ^+ V
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
" G9 g9 k0 m0 ]! O Q5 F" q其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; " k3 ^( Z, g6 U
样式声明写在一对大括号"{}"中; 2 t1 o& e l: B( X0 Z
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 8 d+ r6 @% f+ U/ S" s. `1 r. `
"#FF0000"和"#FFFFFF"是属性的值(value)。2 K2 E8 Q' G% i. V) I9 H
3 c/ w2 Z* [$ ^8 G7 [+ m
2.颜色值
2 l# h& f# ], p0 ? f, x* d0 M& z6 E/ B0 S7 |
颜色值可以用RGB值写,例如:
; c0 ~1 D3 G% i/ |& g( n6 I7 v! }% p/ [8 L$ S
5 N) V5 f5 }) C U! ]- E,也可以用十六进制写,就象上面例子+ I" q" m8 D: s; Y
5 S1 F; E5 F6 T. K3 A; e; I
6 I% E3 ^" d; V' i' B x0 d如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
3 U# X. ?! R- p% \
' ?% C2 j: i/ y3.定义字体# U5 X/ z P0 x& C% s: t
web标准推荐如下字体定义方法
) P- }) X- ~7 Y" |6 H0 E/ r
! q! }: i& W' k/ a* Gbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
1 p7 G) x3 M, a# @. X/ K3 [字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
o9 F0 ~1 L) L. ~; o2 c; ?2 j4 jLucida Grande字体适合Mac OS X; + \. }: {7 }0 K
Verdana字体适合所有的Windows系统; " p+ p, j8 m- C$ ?8 K3 c
Lucida适合UNIX用户 " x! ^, a1 |! `5 }: d
"宋体"适合中文简体用户;
, m9 j0 |+ N/ G# A, G如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;+ O, }( u0 q0 i) C
( e( w( @3 ?5 N. d9 v1 P1 n
4.群选择器7 v ?4 p! x3 ?4 g( o
0 S9 u. z5 t; I2 m5 j. o/ d当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:$ s3 N/ P! @; S9 H! H# L: X
0 H+ B8 f3 e6 t0 v
p, td, li { font-size : 12px ; }
, T8 v- b2 z0 S% F# c- k就是给li下面的子元素strong定义一个斜体不加粗的样式. T- X3 s- h! I( M" }" I
1 a4 V% A3 N' p6 q; Z' \* O6.id选择器4 W% w6 L" M' |7 {
+ A- Y7 x; x2 }1 i5 k
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
* \! {- y$ o) L0 q8 Y
4 m( u5 }& T" s' Y' H) U- ?! h6 f1 J" H& v3 P, ~2 n9 L# u! U: I4 j
然后在样式表里这样定义:
! H; U; Q% J6 v, z
8 O, k- W: M' |: t+ {3 l4 j2 k/ t
1 B2 u( D: a: _# Q( d2 S; U! M0 s#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} |0 D: q" s4 f K
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。3 ~/ i$ F4 x7 T3 T2 \
t5 U+ r1 V; b6 W. K
id选择器也同样支持派生,例如:- x, s7 e1 h' }5 w/ R$ F4 a
#menubar p { text-align : right; margin-top : 10px; }
0 [1 H p& u' P3 @$ z7 W4 k+ m& u这个方法主要用来定义层和那些比较复杂,有多个派生的元素。: V0 I: d6 j0 z& ~
- R; [" P/ q/ T* O- i1 l6.类别选择器
, E, A2 i/ f# w. o) ^) X! J. s9 a
在CSS里用一个点开头表示类别选择器定义,例如:5 T7 M% e1 ~) s! u8 W
.14px {color : #f60 ;font-size:14px ;} + l0 ]! k& v2 e% k' ^) e
+ ?1 M4 s) c, @( R! x a8 r9 I在页面中,用class="类别名"的方法调用:
3 @1 g( ?. g Z4 u0 E5 H6 J<span class="14px">14px大小的字体</span> 6 M) A4 g& K6 r$ f! ^
( t& B3 _ k8 ]3 b/ F这个方法比较简单灵活,可以随时根据页面需要新建和删除。
0 s; |8 A+ m3 X5 O, e: b+ Z; T8 h/ _% e2 S6 }! }1 F
7.定义链接的样式
: G# s! |# S' @2 JCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
3 x3 v# G( s# Q va:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}& \& J. k0 A) g. c! _
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
7 X# R7 g* l* ~- G' L0 v) l6 ]a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}( {. q- v0 E/ t0 u$ Y, e
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} 0 O J' ?- H5 x. h+ z; |2 `1 G
8 ^$ W: L# H' P% a, W
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|