|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。+ N2 b( y9 K- t& N! i# F
0 D Z9 T; ?. k8 t7 Z5 q. h6 }1 v1.基本语法规范
4 Q* B4 S' k7 d0 G6 Q) u0 } e分析一个典型CSS的语句:
" f0 @( c# ~( u, g$ ]8 c' Kp {COLOR:#FF0000;BACKGROUND:#FFFFFF} ) P! z( \* o6 k: \; i
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ( T, ^9 t; L3 M- q
样式声明写在一对大括号"{}"中;
5 f2 ]% D& B. z. X& X. aCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; 1 _* l2 o, I% v o" d( b
"#FF0000"和"#FFFFFF"是属性的值(value)。
: I7 X* s6 b" b, V
$ o d; C+ s0 [$ }1 e/ b- w5 D2.颜色值1 K& T8 l' C. }7 n O
; d5 t8 Q5 E4 {8 {颜色值可以用RGB值写,例如:
5 h: K a+ e G+ B; H! U @9 a8 T( {) p7 w5 G0 Y
5 l6 R" {: q7 U# c& c! k0 ~9 } B' _,也可以用十六进制写,就象上面例子
- a+ e. @& H' k8 Y1 Y6 U1 n6 `/ W! Y# C6 d( L/ V1 e6 R6 o
% w1 z" G- M& b0 t$ V
如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
( T% K( Y$ I/ \' t& K
1 V: x% O2 ~! s3.定义字体4 R- G" H% h4 f, ]: T. z0 f4 h
web标准推荐如下字体定义方法
; c( v( M4 l* ~6 l* E
) G/ v3 {. I( C# w- B, @body { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; }
G, h1 j G, U0 ~2 T" o字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,; * ^! v2 `5 P+ V5 o( d
Lucida Grande字体适合Mac OS X; ( d) f/ B0 _9 E9 j2 V3 W
Verdana字体适合所有的Windows系统; * f! N- T2 n& m) G
Lucida适合UNIX用户
! Y5 ?4 Y5 e1 u1 `6 U"宋体"适合中文简体用户;
) w: M. h$ _8 Q* L# m# m+ J: k# W& G如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;, f8 g; d# \# I/ @4 p& p
; q. s* w4 V. s B- W) o% Y4.群选择器7 n8 p7 k6 \2 V
% _5 ^6 g1 h1 y9 c1 i( B当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:
/ b3 E+ Q5 O% W9 x
0 @. s7 X- u/ O, M4 L A% m3 W3 C p, td, li { font-size : 12px ; }
, V4 m: G( a# g2 u就是给li下面的子元素strong定义一个斜体不加粗的样式
! A6 c) H3 j0 i; |: r1 ~" j# d% F0 Y2 h' V# s3 p; d
6.id选择器
8 ^8 I4 G! R' S2 o
& ^' z; q8 y. H9 M/ p8 I/ P用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层& D @) d4 g3 P7 U; {" a$ @
2 M! Y9 [' N* @, L9 }
4 P% N# L w8 [) z
然后在样式表里这样定义:
: @6 O4 ?. f6 x% ^: |! ?, v' r( H$ `2 G$ {# U1 I
4 R: S2 Z* ?( T5 ^
#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;}
/ m) k: l6 H0 [! P8 u: N" @其中"menubar"是你自己定义的id名称。注意在前面加"#"号。
% o" h: e! Q. S- a; ?% _
1 O( j/ O7 @: A, L5 y/ ^id选择器也同样支持派生,例如:6 _4 V1 W5 S: U+ D: b& u
#menubar p { text-align : right; margin-top : 10px; } # C+ b8 V6 p) N' `# a7 ^9 I
这个方法主要用来定义层和那些比较复杂,有多个派生的元素。# [7 p" v+ A8 k. `
. f; Q! [6 j" t E8 u$ }. g6.类别选择器2 x# F% V+ f# l& T
8 _; z3 V, l+ T# u3 d7 p在CSS里用一个点开头表示类别选择器定义,例如:9 m* p% n$ N( L ]1 y6 J2 _
.14px {color : #f60 ;font-size:14px ;} ; C3 u7 K: X) s# m' j
8 ]0 M; a4 o& q" s2 i7 b在页面中,用class="类别名"的方法调用:/ |6 x3 B1 k2 k/ V1 {; \) j
<span class="14px">14px大小的字体</span> 6 q3 J5 g( I+ _! I( `( A
! t( g; B0 r ?, E& M5 b" }. K1 i这个方法比较简单灵活,可以随时根据页面需要新建和删除。
0 ?. O2 L& t+ {. P; w
" \8 a3 f& a+ o/ T4 ~7.定义链接的样式% |7 k3 [4 u3 ?9 o8 Q
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:
* C# j' B2 }! A4 t& Y8 Ja:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
6 A3 q5 n2 c1 pa:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}: C4 b- j& e- C& m( m
a:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}
, v c$ N% Y/ a8 i8 va:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
/ q3 E* x. ~ F+ R6 X0 F) \( [0 @2 `$ d. [6 ]& ]8 A5 V. w
以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|