|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
; [# {) C K, O3 ~5 |4 x2 P6 P4 t; ?2 [/ N/ H Q
1.基本语法规范: P! k O' |+ ?: |; y. F9 ]- S' i: W
分析一个典型CSS的语句:
) ~/ `1 a4 l/ t) _& L; @! A) wp {COLOR:#FF0000;BACKGROUND:#FFFFFF} # d! C+ T$ t2 U, ?4 F7 U
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;
9 H; |! h f1 Z& I样式声明写在一对大括号"{}"中; . f& Z1 |6 u. Y# q% v
COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; [- Q6 X' E4 k! {) @8 ^
"#FF0000"和"#FFFFFF"是属性的值(value)。, `8 N2 l0 V H0 W
( c6 }/ f G! j! B+ F+ Q2.颜色值% ~7 D! {1 h6 J! n4 P
9 x" f( ~8 V, L
颜色值可以用RGB值写,例如:6 {! E/ b: ^1 |; `' U9 U! o
; @" B3 s5 v i# n
; \$ [7 B h: `9 F$ {% B' y: v; L f# n,也可以用十六进制写,就象上面例子
' u" J) D! @ s) z
; J5 ~1 o u3 V% V; c. R! r U' p5 O" G/ g' m
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
* [ I% ^7 z# ]! r I3 |8 l6 h: p; P3 K
3.定义字体$ k3 \3 f* H8 V* N6 D% @! m1 e
web标准推荐如下字体定义方法/ e: X+ c3 _1 N* h' L
2 x9 E+ A2 S! f: z M2 J( dbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } , R4 {. Z* @- E) ]6 W& u# J6 l) R
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
7 G( i( g/ k& m7 @( f, u1 fLucida Grande字体适合Mac OS X; ! ], e* _2 L1 @; z+ \
Verdana字体适合所有的Windows系统; ' a- D6 Q0 z4 Y7 X' A
Lucida适合UNIX用户 ; v/ G# L+ \% b" R6 r* j0 D$ q
"宋体"适合中文简体用户; " ]5 l# L2 \+ \7 |7 R/ e
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;. Q7 ~! S+ ?0 \" }
2 s* m% S; s5 `: n; k: s+ v4.群选择器& n- O- t- [! j) W
( M" A4 w" j: J- l% |
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
# `# H( g" q R4 m) Z- a0 B
9 O! W2 i, B, j1 h' |- B p, td, li { font-size : 12px ; } # K0 m: X; l& a& q6 l3 L
就是给li下面的子元素strong定义一个斜体不加粗的样式) O& F1 V+ i9 x5 u5 x6 G+ X6 Z
) x. g+ `5 s) R6 N; }. q* i
6.id选择器
8 w# x3 m L" _; z7 E8 {; R3 g, Z! K9 F9 p' ]2 ~& R2 J
用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
8 r+ l$ } k( K; }( w
% R# X5 g8 ]0 B- U
& l2 j% f% Y }( b0 N然后在样式表里这样定义:
5 L# N! W8 ~" x% L1 L8 q5 X8 }' e- r7 L
4 e9 P- a: D8 \. v. I# n$ [
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} ! Z, Y( s' v0 R, K: f. F
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。* E# \; i; l9 z/ p" G2 X
% i4 U- v7 f$ M
id选择器也同样支持派生,例如:
2 j5 J/ I5 O. e) H#menubar p { text-align : right; margin-top : 10px; }
# ^* b% |( K0 _' ]3 R' z这个方法主要用来定义层和那些比较复杂,有多个派生的元素。
" p: F2 }9 k, e; D. C1 R
9 v- V3 ^9 `+ C6 z* M, y! ~4 O6.类别选择器
. s$ Z5 a( X3 v6 _; u* Y: b) V0 ?; h& A
在CSS里用一个点开头表示类别选择器定义,例如:
1 T% c4 u( z# s. }- I.14px {color : #f60 ;font-size:14px ;}
+ e. j% g6 x/ j& P# u0 }# b# g" `4 a: ^, w; [* @' d1 }
在页面中,用class="类别名"的方法调用:
% e9 v% D/ y* o7 P# {4 i( S4 d<span class="14px">14px大小的字体</span>
$ c* s4 E9 f( @ r* p" W8 p6 \0 f6 ~
这个方法比较简单灵活,可以随时根据页面需要新建和删除。! g1 r$ r$ w/ u1 ]
% {6 d: g- H# D" E' E1 d ^) l
7.定义链接的样式! H1 N7 |( a! _
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
4 L; ~7 W' F/ J/ {$ k' ?. s6 v1 ^a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
3 @, o3 u0 {0 `) q/ p. M. q3 _a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
6 J# M+ E) E; ha:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
( A6 a/ O0 y/ ~* }0 S8 H& Fa:active {font-weight : bold ;text-decoration : none ;color : #90 ;} ) G& m2 K0 X" y
! h% G/ s( ^ o8 u
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|