|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。- Q6 j9 i( |% H G
% a+ J0 P2 G8 |% b; @( o
1.基本语法规范
8 Q8 s p$ O% N+ @分析一个典型CSS的语句:
- C1 }6 i9 c, d6 \( }" ^$ Q5 Zp {COLOR:#FF0000;BACKGROUND:#FFFFFF} 9 m: J/ Q; ]8 F' u& l
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; * j/ X6 y4 S- s) |6 L5 O
样式声明写在一对大括号"{}"中; : S3 h" ` H% s; p9 Q: h8 j' [
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
+ q3 P3 F; ^$ d. M( R"#FF0000"和"#FFFFFF"是属性的值(value)。/ ?/ `% h8 O6 f, t, K/ g% g) b* A0 w5 t
* t9 C: Q, Q$ G" Z) t0 i
2.颜色值6 T% R" [/ ~/ o& z) m/ T, ]
* p, p. L/ G3 e0 U& X- Z9 V颜色值可以用RGB值写,例如:
3 A% d+ a" ~0 `) H* i2 ^* e* @7 | w8 F% {' i
0 t" W: g* Y2 {
,也可以用十六进制写,就象上面例子: L. ?6 M7 C6 i1 w' H% v
" }' e! S: T0 J; u# @' e
7 b& D3 C% A" j( |/ J: e如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。& r1 m- i s. R! f& Z1 A$ \9 m- O; J) p
' D" F8 L6 a. c' J) l
3.定义字体
( I, B# Q# I- Sweb标准推荐如下字体定义方法
# R3 |) _0 w+ Q1 q" u" [7 b$ W- ~& y
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
5 A; [, D2 Z6 ~3 O* n字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; ! t) q1 g1 R) b1 [
Lucida Grande字体适合Mac OS X;
% T, k9 B) M9 B$ N) WVerdana字体适合所有的Windows系统;
8 f* F l: Y8 R: G% I- x/ F" QLucida适合UNIX用户 & T2 y) n/ n. s1 {: B
"宋体"适合中文简体用户;
4 n6 _! L3 C- D2 \1 v6 Q如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;" j6 e+ E) m" l+ N$ w
* [; S) z* }& u7 ]% n$ P! r
4.群选择器9 G2 E7 D" M0 w! Q3 D) P
& k3 u; J: _- V+ S$ V当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:4 a9 b* p* }& R! @6 R
# u: l0 J2 N5 g8 k9 u' o8 p/ { p, td, li { font-size : 12px ; }
& B( T4 W; z8 T# R" B$ }就是给li下面的子元素strong定义一个斜体不加粗的样式6 p" i# p4 h7 R* L$ K2 `$ \: P
! a9 f! e* P. V/ B0 b* o: j2 F# T
6.id选择器
# x! R% h# h3 B/ v% w+ a1 G
; T% `5 Y; N5 `' g用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层0 b0 H- v: B; y+ p. D9 o- u4 `
" c" z, ^& X1 N5 C F1 G& Q7 [1 Z4 K3 t0 N8 t+ H1 U& D$ g) D6 S
然后在样式表里这样定义:
5 o8 w1 o' o" l: }) h
3 z' S! ~" N, ?6 z0 n, Q3 w' h6 q! i$ w
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
8 b3 H( p* g, i. Q1 C9 ~+ L6 V* A其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
8 i/ z9 B/ y+ X+ h( H! {/ C
1 l& K+ j0 v9 g+ E3 C. ~9 v* ]id选择器也同样支持派生,例如:6 k7 n0 m& q1 f D9 s' c4 G
#menubar p { text-align : right; margin-top : 10px; } : e: V( N1 q2 \, p' w
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。/ j0 z8 O7 G, g B: y; M4 `; @* Y3 C
* T/ Q, P0 b; [8 h
6.类别选择器+ K1 S: l/ l9 c8 Y! n
: T0 O2 F) L1 s J3 b
在CSS里用一个点开头表示类别选择器定义,例如:- c+ d0 M- B! }; ?
.14px {color : #f60 ;font-size:14px ;} 0 ~6 y; w' ?3 v2 ~5 }
1 ^- n" _7 Y3 I2 @! O3 {6 T
在页面中,用class="类别名"的方法调用:
. o8 I& a- i! Y3 W7 Q0 e/ c<span class="14px">14px大小的字体</span> . G5 n. }5 X! c2 w) @
4 x7 ]1 o' X1 G+ x- W- E/ ?. M
这个方法比较简单灵活,可以随时根据页面需要新建和删除。1 M' L3 _: h, e9 o6 _% ]6 S
% G( J$ T1 C# U+ O
7.定义链接的样式
6 v* G4 ~9 P1 ?8 yCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
3 j# Z f: p9 d- v* `9 L" `( r6 H6 Ka:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}( p' l0 l: Y5 s8 n1 ` ^
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}& P* m8 a# G# p5 h/ B, Y0 D+ y F! h
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}; ?' v B- P, z6 ]; s
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
( r; e) m" l: y! z+ I
# `# x8 g Y7 {& K以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|