|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。: J0 M, M& S6 K! j3 S
3 d$ |+ T Y8 t3 W/ J: W1.基本语法规范
6 d! j% D F6 A! _7 R' _6 E6 _ X分析一个典型CSS的语句:
7 G3 ?5 p7 U2 R) L0 Kp {COLOR:#FF0000;BACKGROUND:#FFFFFF} ! a: `( B& b' F D2 }1 K
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ( i* k$ W/ L3 r1 [% ~& d* M8 [* F7 o" f
样式声明写在一对大括号"{}"中; u) \6 j9 O4 l7 h# x" {
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
: Y- W1 l3 J. t" R4 ~# y8 e Z"#FF0000"和"#FFFFFF"是属性的值(value)。. a- r" }: _% y$ d! l
; {( f2 I" }+ n. V2.颜色值, W1 u& w0 C* D2 `. v0 @+ D
9 r+ R; |9 K' H# d- ]: ^2 D颜色值可以用RGB值写,例如:6 ]2 u) K0 m: w$ j3 _$ _) V
+ E4 O: h. p. K! H) @6 M
! x- r8 m! N9 M) p7 m0 h. C; P$ K
,也可以用十六进制写,就象上面例子
: z7 ?3 {/ R- m- c) O# J K
' K8 E" e6 I3 V
7 `# Z2 l1 d, G3 }如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
5 u* a6 j; Z& h( W: m; b7 B
7 y$ x+ b* [7 k+ R3 j1 [+ q0 o3.定义字体
]" j5 f, `, b0 A" n9 Tweb标准推荐如下字体定义方法
R/ H$ Y9 J: M7 V
0 E$ v( }* R$ |# L0 Hbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } 5 V+ B; R6 p1 F O
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 1 ?4 |2 P4 q. \4 a* Z
Lucida Grande字体适合Mac OS X;
3 j V- o& z0 {/ K% s3 t. X8 I" CVerdana字体适合所有的Windows系统; 2 n4 {/ z8 S+ J1 F- d
Lucida适合UNIX用户 4 E/ V) @% \* A1 j+ B, j# w2 _
"宋体"适合中文简体用户; , p) l. a y; c
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
7 B! n- K! \+ w3 A9 ]( I- I! y8 j7 t" K
1 `7 ^6 k! X2 `, X( ?4.群选择器
4 T9 j, E0 G" j# g K& D1 h) ~: @; J. t2 U
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:$ Z: U7 c1 u; j8 U6 h
/ L- k; T0 ?$ O8 ?3 r p, td, li { font-size : 12px ; } ; _' C5 Q a, g, a: h; [( @: u' ?9 R
就是给li下面的子元素strong定义一个斜体不加粗的样式
8 ?0 M. }. U$ u+ [+ h0 W: q# {
' C4 o, [1 U. _- i, r( }; c9 I/ X6.id选择器( z( T: c' S/ u; L2 _1 w% ~
- g3 _9 D( y# f% [) t+ n) q) _% Z
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
$ s+ V9 S& w7 `! u2 D7 Y( D
( {' q4 ~, {8 c' ~
- F0 H1 \( d3 u+ {# E; z; D e7 H然后在样式表里这样定义:8 l! E3 w" c8 C' v9 o2 {1 V
) v: ~' m" r+ Z- E8 y4 r/ {
; W6 @. B6 k1 g& ]7 t) L; S3 L#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
, j; I& t7 d- V4 V) ?' |其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
! U4 s ]4 G2 H. M( N. W2 E; {
, G' R7 S% b6 d6 ]5 i+ _4 Hid选择器也同样支持派生,例如:# y3 R* N) X) O/ ~3 w' \0 L2 L
#menubar p { text-align : right; margin-top : 10px; } ! G* h9 N5 C c
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
/ H* V/ r; l1 ^! V$ q
- i" `$ }6 A! g& _6.类别选择器, y3 g) ^" m+ x! `& }" D( t
4 Z# k! t9 B2 @6 @
在CSS里用一个点开头表示类别选择器定义,例如:% _. {& X5 a0 c! b# U6 R& @
.14px {color : #f60 ;font-size:14px ;} , B% D$ e J1 z5 J' M% ~
8 x: t- a) F5 V9 k& K+ a在页面中,用class="类别名"的方法调用:$ ~- Q; i, k1 F
<span class="14px">14px大小的字体</span> ; o) X, }0 N- R' R8 h% l8 a
+ D$ S7 ?. Z5 ?- n- i+ Z' C6 |- }! L
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
- p$ e- @8 K/ h+ O0 B) j" |* w: B5 a1 l5 F
7.定义链接的样式
8 J( ~* r& h8 ^" W$ ?' y+ U2 s' nCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
# ]6 ^$ g( \( qa:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}; @) H0 Z9 A# R
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}3 r- @1 j0 [ R
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
2 W: ]& z* w8 T7 S2 P/ b, t3 {. Sa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} , `. P0 q: i% T; u$ M+ {
" k: l. Y% e5 J% j
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|