|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
, X' E/ @. S/ c: z9 T; P2 j0 i+ \- x3 Q% u4 U
1.基本语法规范5 _" X2 X7 Y0 t2 e) Z' R
分析一个典型CSS的语句:
3 c2 K2 g9 O& r# qp {COLOR:#FF0000;BACKGROUND:#FFFFFF} / ]9 W& J e0 ?% c: s# y/ }6 e
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
1 K4 a4 U& B7 i5 n) b2 o样式声明写在一对大括号"{}"中; g6 ]# k* a% {8 `+ g7 }
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
0 [9 \3 e' X$ N6 B# d% _0 }"#FF0000"和"#FFFFFF"是属性的值(value)。
5 I4 i8 s* q' D
7 s. s) D7 e& f- u! ~0 k F2.颜色值$ ?4 A$ z; i# [
7 E3 `: x; g. U9 G颜色值可以用RGB值写,例如:
' q. Z8 T8 A+ K8 T
/ c2 }" t* H- s/ q! |6 w
- E( W$ W, l G, [! I+ E. n,也可以用十六进制写,就象上面例子1 r+ v# o. w1 l$ w1 \, E2 Q, D% W
0 v9 [2 n7 R% D; F1 g% m' T! ^/ u8 h6 ?" X$ y! [) J
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。$ w! z5 a- E" u" E! a# x
) f. |: |4 U1 d, p) u7 I
3.定义字体6 I% I3 D" Q# Q
web标准推荐如下字体定义方法
( g. q+ c+ @ h3 e! s! b
. ~( ?9 _0 x0 m; j! O( xbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } % d3 J2 Y9 U: U; ~% `' b+ l
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; 7 ^5 Z9 L# o5 M. O) t/ R
Lucida Grande字体适合Mac OS X; $ ?3 q3 R; t; q% K1 [! u# J
Verdana字体适合所有的Windows系统; , [1 i/ n3 B# L
Lucida适合UNIX用户
/ a( V. d) `+ d8 l2 m2 m"宋体"适合中文简体用户; 2 C+ s1 t1 S7 H5 V* ?1 f- p
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
G6 s1 I8 E& \; ~! h# i9 Y; l0 c5 q) q1 p# j
4.群选择器
/ s( Q. n+ Q; {% t3 E
7 G0 N6 p" f, K$ X3 ~, G5 Z. D当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
$ @6 l( X0 ^ o, ?) n
6 V+ O3 ^' A6 F7 H% ? p, td, li { font-size : 12px ; }
+ I' w6 c; m5 C& F8 T \就是给li下面的子元素strong定义一个斜体不加粗的样式
( ?. j% a$ ~" l7 A$ z
" ^( P' x, G& L7 b6.id选择器& ?4 d* X4 b7 g
; X; b- y* T2 f7 _. \
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
; h8 p2 c) L2 F8 u6 J# z# f5 h5 L/ S4 V$ f; G9 L+ }
% [; U2 @* b) R0 J" h4 G然后在样式表里这样定义: ^/ Q& v/ T$ }' f
% B2 B7 l% j# k" b @# r) M- p- O& D& v5 K! J
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 5 G5 }8 ^& P1 ?2 x% O; D6 M& X
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。8 E- l: F: D! T T- f
) C, {( b8 `7 O% Kid选择器也同样支持派生,例如:
* V& R/ A, l c; j. S#menubar p { text-align : right; margin-top : 10px; } # C! x, c. j6 s* \
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。( O. ]. \ ]8 Z& o7 u5 d
" }; o$ T1 _6 J+ ^4 F/ J* w$ ~) C" f
6.类别选择器
- b/ ]" e' c/ C. o( E2 n( K. S: s" a5 d0 f, E
在CSS里用一个点开头表示类别选择器定义,例如:; a: ~) R: k" ^
.14px {color : #f60 ;font-size:14px ;} ; }' i) Z+ L! ?
: N* x& L* ^8 k
在页面中,用class="类别名"的方法调用:
2 l5 ^+ w: l. }) C<span class="14px">14px大小的字体</span> 7 T7 n& ~6 _6 V# g) ^6 _: T) S
3 j. B5 k4 j& `, H: p; L( e这个方法比较简单灵活,可以随时根据页面需要新建和删除。9 _+ u# M0 |+ ^7 V$ s9 M- B. r5 Y
+ X+ E: \$ ]+ G0 p7 r5 k1 X7.定义链接的样式
/ `! k6 p. _/ K% ~# QCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
: ]" _" V) C7 y! ~5 N0 G T. c6 na:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}4 k2 k6 B X# o( h
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
& x4 `2 T9 r9 }/ x( va:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}8 y, I. d# d& W' n# L
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
0 m& A y4 B/ c+ l6 d2 ^. ?7 R) J3 w+ b0 ?0 n' V' P
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|