|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。* k! i7 h& D K* W
6 s" q8 h- Z s% s! v
1.基本语法规范' ^" V4 q! A6 v8 ~/ x4 G; W
分析一个典型CSS的语句:: @' }: k7 s( S$ G, _7 `) U
p {COLOR:#FF0000;BACKGROUND:#FFFFFF}
, S; r2 C/ J% F3 c7 n- r& ^% x2 S其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ) m* l5 ^$ O- D% H
样式声明写在一对大括号"{}"中;
( G; h. M. q+ [. I g; Z2 OCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
8 H; c8 G8 h% a, K4 G# v, y/ b0 ^"#FF0000"和"#FFFFFF"是属性的值(value)。
4 Z; K. ~2 G7 {4 g! Q- z% Q1 W; _
# Z" H3 R4 V2 i2.颜色值; j3 b: {; }$ S5 D4 b
' Q3 d- O: @* v4 H/ O0 p# f颜色值可以用RGB值写,例如:- ]1 U" r2 d! b# J2 {5 J- L
( R3 f: k/ w4 g- }# }/ I$ g* I, p
$ J7 {0 `; y a3 I# {- E9 t( V,也可以用十六进制写,就象上面例子
' I ^3 |& a' J3 j7 ]: x" t" q8 N ^! F; C. C& w* Z/ K
* `/ S) r+ x) p& g0 r5 Q
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。4 K$ u+ l* }- D7 Y/ b7 |
3 ^. O; z" L9 X+ F' L! Q; G3.定义字体0 H( W5 p6 }. {; |/ A
web标准推荐如下字体定义方法
9 F M; r& ~* [$ G: \# b- F0 F' H& l& J
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } ) Q" { r! |2 ?5 K, O+ r
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; # w5 P0 P: l, U, C z: g e
Lucida Grande字体适合Mac OS X;
8 a: r& ?1 Z; i7 xVerdana字体适合所有的Windows系统; : ]" A, q8 V# B8 k/ A/ q- u: [
Lucida适合UNIX用户
( H/ L, y1 \/ a( C; R* Y"宋体"适合中文简体用户; * [ ^! b. N: m% t1 o
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
" O# \4 v# `' I9 S& G6 l( ]+ q2 q7 u6 P5 }
4.群选择器
# q9 u" q; }3 N, G* z H: m7 A9 S/ |
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:7 E: ]# ~0 ?2 `8 }# e0 C& @: I5 E
6 f2 O: u6 i! G: h, H4 v( y
p, td, li { font-size : 12px ; }
- ^& [3 A& O4 R: S! O2 m0 }就是给li下面的子元素strong定义一个斜体不加粗的样式
& t- e/ p; c+ x2 j* E, p* @3 o; r, s8 g; S6 S+ P7 r" p
6.id选择器
+ N; w0 G N( I; C9 o' x0 t; f. h' [0 I) E2 v& I, g. G% n% T+ c
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
6 d4 o1 S3 x8 _! G) q3 \1 Q7 {
3 L! q* g) L: ?0 m/ J( J
- u% q# U7 E; b+ d3 d然后在样式表里这样定义:3 ^' B8 u& H- s( ~
* f+ e- I1 c5 m/ Z" o. J
b# B) A8 i8 l#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} / ]8 q6 X8 y' N. D0 w8 b
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
4 V3 X* X4 I8 E9 _ B3 R0 }2 A
0 i2 e. [) q; u# Qid选择器也同样支持派生,例如:- i$ m3 {9 N- e9 H
#menubar p { text-align : right; margin-top : 10px; } # \- e/ n1 _0 C9 j
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
' U6 L( j; x4 [/ r: U+ [8 X, Y7 T, g2 n! _8 T& [
6.类别选择器5 Y' W8 `; S3 [6 p$ t ^
; L( u! N$ D$ c S$ C/ F
在CSS里用一个点开头表示类别选择器定义,例如:' k2 d) x0 P5 ]
.14px {color : #f60 ;font-size:14px ;} : P2 a/ C y' X# H* w$ B
2 y9 R# o; u$ N& F. D+ Q8 ^在页面中,用class="类别名"的方法调用:
1 w2 b3 ~$ D E* Q" c$ n2 {<span class="14px">14px大小的字体</span> 4 s, s5 T9 H* X6 m4 }" g( p, @
/ J8 c& s8 @$ _4 T+ s3 \/ x这个方法比较简单灵活,可以随时根据页面需要新建和删除。! ^0 U* i8 q9 x+ J+ r; I
# f/ p. b: y0 U
7.定义链接的样式# @" E8 G, r; T* G4 N
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
3 x3 e0 j8 q9 na:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}$ q+ A$ W: I: Y; [; h, W1 p4 h U5 D
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}7 G, l1 M, t2 ^& M5 E
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
n5 j1 k* E6 ^* O, e% ca:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
7 A9 w9 R. S/ {! V# `
. ^" J6 n2 N5 d H以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|