|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。) X+ n$ h E' `+ O ]4 _7 V
& j4 i, U' q5 y! {9 E; s: z
1.基本语法规范- ]7 _$ G. o5 L2 B8 F- {3 ]
分析一个典型CSS的语句:
4 u6 f7 t2 E) N: b- \: n1 _. Wp {COLOR:#FF0000;BACKGROUND:#FFFFFF} 9 Z; j+ K, d+ Y! R2 ^( e
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
/ U0 d- K. @$ Q( X6 F样式声明写在一对大括号"{}"中;
: `$ _# a q& E/ Y9 q7 ], iCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
0 a$ N+ T$ C3 Q2 t2 v"#FF0000"和"#FFFFFF"是属性的值(value)。. l! b( F) V2 Z; P
: \- K7 T( C Y3 O2 \- [( B$ j2.颜色值$ J/ g/ y" S( C
3 D# v a% X: k& e$ T0 M) n4 Q颜色值可以用RGB值写,例如:
3 w8 ?6 g6 d u1 R
6 I1 @0 m! ]9 \, d0 Y& [& M" z' {; V) N9 k& r4 v
,也可以用十六进制写,就象上面例子/ {. \- o" ?4 c( O; O
5 }$ c- N1 `# ]! g
2 n8 Q( ?; S8 H8 F4 V/ ^0 h6 |3 a) L如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
7 Y0 V, p: q- X9 c( P1 \' G
+ e+ P+ M. W- D. u: A( Q1 A3.定义字体
7 j3 W, Q3 `, d* ~9 |5 m7 D4 \web标准推荐如下字体定义方法
2 \( n' m- b1 y
9 t( p0 o! c! m9 wbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
7 o9 r& h; h5 h字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
: G. W6 ^9 ~9 h, J9 E. rLucida Grande字体适合Mac OS X;
/ b! Q' O x; g9 S; Y% AVerdana字体适合所有的Windows系统;
! _) J9 t( A2 C3 N1 I$ K$ pLucida适合UNIX用户 " a0 Y' i2 U! v3 i9 Q1 ~
"宋体"适合中文简体用户; 3 W8 G6 w" C! G* T B
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
0 {, Y9 o2 f- p# r: ^/ h [7 ^/ c f5 `
4.群选择器
+ O1 S& U' d r* T( s3 {! B u1 c8 }/ K" j8 D$ l9 } r9 _1 g2 J/ j9 A" b
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:( d! M9 g% Y5 B& f0 ]* l* o5 A2 E, a
% @' L: V& q% C+ E p, td, li { font-size : 12px ; }
( n. g2 [/ `+ m4 c就是给li下面的子元素strong定义一个斜体不加粗的样式1 d5 @4 V# s! y. n* d: l4 j
6 h1 K- c T3 \' a$ u. M) V4 J$ A. v8 H6.id选择器% }1 j E! \6 T$ ]# g. u8 `
6 V- n6 h: I' C% @9 M7 @用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
2 [. i5 F, i9 j6 V- a9 q4 Z# f* {/ J, b6 q! a7 X7 h, j+ i
, a0 S3 Z% z2 N然后在样式表里这样定义:( j+ R7 T- V; c
7 H6 E$ H5 Q7 h0 Z5 w' B) I: F5 E# _
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
- D3 J7 r+ s0 X0 @ a其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
; w4 }. g+ ?/ k* G- |4 a+ p; }% \' u! G3 G. x _" U* }. D
id选择器也同样支持派生,例如:9 R# u' W* L* A z' u* I& r3 {
#menubar p { text-align : right; margin-top : 10px; }
% k* z; x) P2 d6 Z4 Y这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
. J3 m \ I' Q. K) S
( k8 l9 ~, I. C" y1 t d7 W- Z6.类别选择器8 \- j% u8 a3 O
4 `( B1 A% J1 U# n5 v4 u& U
在CSS里用一个点开头表示类别选择器定义,例如:
+ U- J6 B" w, l6 Q.14px {color : #f60 ;font-size:14px ;} , K% a/ ]. k/ g0 ^
$ m: l+ w) [6 W/ S' X4 p+ G
在页面中,用class="类别名"的方法调用:
9 M' V$ Y0 p2 b p<span class="14px">14px大小的字体</span> % G: y5 j0 ^' v! f
2 k. O0 w, L- t) \, A这个方法比较简单灵活,可以随时根据页面需要新建和删除。
% F8 T' A5 x! I* G9 h( C" j: k$ i* v8 ?
7.定义链接的样式
9 v! n( r) U6 v& l8 D! {9 ]CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
7 ?2 C: }0 _6 b# {: d5 ^a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
7 J' D* ^" U3 K' G v1 x- e' na:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}$ {5 n$ y2 i8 F; a" i& g4 J. G$ ^
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}1 d: l8 y! H5 a* p) r
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
7 Y! `% o. O, N7 ?* Y8 Z7 O* p
2 [ `5 k) k7 \! y9 }# `# i以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|