|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
# e. i( K! w$ a! k% g3 R
. ]- a3 h3 u9 n0 C5 A1.基本语法规范/ n; S/ @$ J! S u5 Y- |8 g
分析一个典型CSS的语句:( j) b- C4 y7 R3 Z
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} % K( _& M& |5 q* ^& S( h
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
5 y1 @/ y( H O% y$ \0 I8 u( Y2 n样式声明写在一对大括号"{}"中;
, n& ~; R4 H% C4 U4 w% j0 {COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; : R8 I0 f% R( A' v
"#FF0000"和"#FFFFFF"是属性的值(value)。
3 y2 X, K: ^6 r5 d2 i7 P2 y3 i/ Q8 ?6 d4 R# [3 e r7 {
2.颜色值, f; ~ c. X! q- z$ f
2 [* c4 m3 R1 y0 p1 \3 U: J# ]颜色值可以用RGB值写,例如:. b y; s8 k. [, w+ n
3 `0 T2 L7 L$ x
7 o5 k: T9 s7 R( |1 w$ j6 J4 {,也可以用十六进制写,就象上面例子
8 p; }1 q& }; Q& r: Y/ {5 U- _9 T# w' I
- y/ w& q4 L' H8 y& f如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
0 {" Y0 Z2 Y$ u. ~7 A4 u
# W; f) i1 V" a" D3.定义字体7 L2 u2 T( s, R- Y
web标准推荐如下字体定义方法1 l( r% s8 }" @) s% C* h; r
- i5 B- h5 Z3 H2 U3 z
body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
; {1 ^8 _7 W+ O7 B* m1 f- [* ~字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
, e" z& R+ r) \7 M! H1 rLucida Grande字体适合Mac OS X;
5 F& o4 V$ l# K- \3 T! @Verdana字体适合所有的Windows系统; ; D* w& ^' N$ E) ?$ G
Lucida适合UNIX用户 7 I8 C, W' u/ M" ~/ U. a; o
"宋体"适合中文简体用户;
: {6 i' d0 ]% p3 f( F如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;6 L" d: ]; K, s6 c" v% K' @! X! n
9 \3 Y$ P' v" s2 D; m
4.群选择器
: Y$ `2 K7 r" S
* Q9 B1 F. \- @" U" n当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
0 T2 F+ G$ i, I: Q& p! M
$ K4 P& `0 L. k" G3 f p, td, li { font-size : 12px ; } 6 F$ N( m) o6 [! l; I
就是给li下面的子元素strong定义一个斜体不加粗的样式
! z* M9 `* F0 O% X
8 I5 I+ N% G! L, X* u6.id选择器
1 N P; c; }& L7 e% r
; k/ M2 J) g( n6 l* f; Z; H用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
$ n! z% ~8 J0 }: d6 P& d6 t& E" D' ~' c/ u
+ Q6 a' j& s, a& f4 \然后在样式表里这样定义:
! x3 W7 b1 V" v" J. Y; ]; X$ s5 v+ Y$ R9 m1 V" N
4 B4 v* T; U/ m$ l- p$ n
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
8 a) ~ d) k/ N% H其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
: z$ \9 U- x4 j3 e$ \" r; J) p
) _* r6 C$ {9 Zid选择器也同样支持派生,例如:
) E& s; g. R C% [' r! A$ T#menubar p { text-align : right; margin-top : 10px; }
, D+ y/ m1 B5 d+ U1 w* [0 v这个方法主要用来定义层和那些比较复杂,有多个派生的元素。2 i Y8 p! S/ {+ Z) {5 N+ Q0 F
6 v- ?; t! `+ J, i
6.类别选择器2 P" }. D% e* ]
4 y7 I& F% w R$ p0 n8 W6 W4 V在CSS里用一个点开头表示类别选择器定义,例如:* v; {5 I q; {) R4 O/ p& o! y, r
.14px {color : #f60 ;font-size:14px ;}
# \$ ^& q7 z* @' F- k1 v H9 M! } @+ X B! `6 W
在页面中,用class="类别名"的方法调用:
4 O+ f M2 p# K<span class="14px">14px大小的字体</span>
7 o5 H7 ?* z( S* Y8 k1 t) X8 X0 x; E
这个方法比较简单灵活,可以随时根据页面需要新建和删除。& R) K7 G. {, `+ X
. y% K1 F2 }# Q- ~6 o. v7.定义链接的样式
( i, p: H2 N6 ~6 i! }5 lCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:1 q+ Q8 R' t, R6 |+ O* Z7 L
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}* {6 G) c# n& E/ L' V( K
a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
% c( t2 K2 a$ Sa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}0 S8 Z7 F* b1 D4 I& g! M
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;} , K3 @6 f+ F- Q- u$ T! O( w
3 G; i; o: U% G" i; N# _" J3 O以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|