|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
' s6 k. O' E4 G: @; S5 s
' J0 [; f2 Y$ h( Q) k6 \1.基本语法规范
% L7 ]5 h9 M9 c; d1 u分析一个典型CSS的语句:
D- F3 k( h. f# y% g. |0 qp {COLOR:#FF0000;BACKGROUND:#FFFFFF} - Z2 ^4 S; \: M3 e- T+ m
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
$ x5 |9 ^4 }, C3 `4 M* F' |0 ~样式声明写在一对大括号"{}"中; 1 d6 \, n F3 D6 f/ `" I
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;
# U, U4 J3 Q$ q; r"#FF0000"和"#FFFFFF"是属性的值(value)。
4 |6 l6 l( |8 |+ u& l3 \
^+ R1 J. X! Y2 u/ O2.颜色值% m% X. Y/ y" R4 c) Q
$ u- n# X6 T6 b W C/ D* n
颜色值可以用RGB值写,例如:
) l" }: T2 t5 I, _0 R0 M9 {2 X: F% ^: }- j: k1 f
4 l& @8 r; I0 O2 @5 a9 w
,也可以用十六进制写,就象上面例子
& D: i2 R+ e4 u4 u2 A' u% K% q" t3 X8 W
, n, ^1 n s+ i# [. c$ a0 C如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。2 h, Z) S/ u0 _, i' @
1 V; i. ]9 p4 o) z S
3.定义字体 J: m2 y- ]5 E8 f, Y
web标准推荐如下字体定义方法
, e( E& z5 c$ r
$ m% g: \8 N) _+ sbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } / D E9 c7 f, o9 V# J: T1 C
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
+ }3 T' a4 R3 n- v) n9 gLucida Grande字体适合Mac OS X; . b& Q$ L- b a( U/ a
Verdana字体适合所有的Windows系统;
% @+ U" q0 v t' K2 a8 X$ R* jLucida适合UNIX用户 ( U- `# i' [. V5 k# K
"宋体"适合中文简体用户; 0 @5 f; U# e1 _" j4 s
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;
5 H* g- v& s+ k8 v% v* \# W* F& D7 W
$ _" n6 M, V' e2 O4.群选择器
0 e3 M( E+ G$ ?! M9 M' S, I/ {8 c. b" {
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:/ u% @0 N( y E/ q: l
- ?' c+ G1 [1 N c p, td, li { font-size : 12px ; }
4 F- ?: t; K! L. H* o/ W6 T0 T9 e/ n就是给li下面的子元素strong定义一个斜体不加粗的样式5 k' `' l) J1 f7 D0 B& @
* J) m$ n! y6 U+ N3 i6.id选择器
! P$ I: w4 n( j' y5 X4 H0 y6 |! ^3 |% D7 x2 l4 h
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层6 \1 N# X0 \: r: k2 m
3 B6 ^8 R7 y ~$ e, a j2 W
! @3 W- Y3 A# d, ^& e然后在样式表里这样定义:
/ Z3 Y+ U/ Z1 E1 G4 W
4 @: K* W0 L' y. S& R1 u; _1 O" y- E" o" H$ r" E
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} j* }) _* i5 a% F/ L. D; U
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。4 S3 c- n" e- `
2 r5 x/ U: W, @! K/ R% i0 R+ k
id选择器也同样支持派生,例如:. @/ W* i+ @) K- _' g3 P( o5 z
#menubar p { text-align : right; margin-top : 10px; } & J' m( C5 v. O( ^; c0 C7 T% [+ N' x
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。2 B) j* _/ Y/ U+ B
8 K3 q3 I t% ]5 |4 d/ |
6.类别选择器! j1 @$ X+ I1 c# D& L: j, g
- ? }( y6 t6 `# M
在CSS里用一个点开头表示类别选择器定义,例如:
- I9 }7 u3 N( F6 ].14px {color : #f60 ;font-size:14px ;}
% M, ^& T$ f. @+ o1 B" Z) M
0 K9 s8 A# `& _8 ^在页面中,用class="类别名"的方法调用:$ m; y- o4 Y. K4 d% b% H4 G
<span class="14px">14px大小的字体</span> : \* w6 d. J6 y; r5 W$ ]. T. E
`. j- \1 _% B/ e5 _ p3 F% u这个方法比较简单灵活,可以随时根据页面需要新建和删除。
. A4 S' a0 I. w* h6 J
2 L' N$ `% T! I! n7.定义链接的样式
2 h# q' a% j9 e2 Q" WCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:) B/ B9 v. ] W6 ?
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
1 k' Z3 c7 ?2 Y/ Ga:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
( K/ j# P; e, b: Ga:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
5 n2 V/ u( i, X3 Aa:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
' S, J" l+ j2 H0 v1 h) q; d+ f0 n; v! ?: i& P: L
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|