|
|
CSS是Cascading Style Sheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。
! w2 [# L- j4 o( D' D: V/ v
8 Y/ K+ h6 V3 B! y' T1.基本语法规范( l% Z$ Z+ f% p9 L# ?
分析一个典型CSS的语句:1 W# h3 Q2 o: R% c. n2 a) R, m3 u" C
p {COLOR:#FF0000;BACKGROUND:#FFFFFF} 8 n# H* g2 X+ V! {/ }* u
其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式; ; s2 s6 s: a+ s+ k
样式声明写在一对大括号"{}"中;
7 b) A4 E2 f( p( [1 M7 ZCOLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔; - n2 z$ J- N1 @
"#FF0000"和"#FFFFFF"是属性的值(value)。
* {8 p$ L3 B( W6 d8 K7 K$ ~2 C" A$ z% n) Y5 @, M- C
2.颜色值
$ {2 O) T4 x; j T$ ^9 T# Q* R* s5 K! G/ _" K& q9 O
颜色值可以用RGB值写,例如:
' K! ]. L* e; p4 E7 b& D0 H8 T4 ^, r* ?# }
1 I1 u; i. ? g
,也可以用十六进制写,就象上面例子4 Z7 B8 W1 Y1 n# |
$ {9 n5 @6 K# R- M
% z6 Z- i. z0 k% M+ |4 O9 Q如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。
- }: e+ j7 E' M5 H+ x) _
+ o5 I& N& Z; {$ `3.定义字体9 j3 @1 o0 _ p7 t
web标准推荐如下字体定义方法" d+ i: x9 f9 p
( J* O3 z- z9 X! c0 x. h& hbody { font-family : "Lucida Grande", Verdana, Lucida, Arial, Helvetica, 宋体,sans-serif; } , ~4 Y! I- D8 @0 c
字体按照所列出的顺序选用。如果用户的计算机含有Lucida Grande字体,文档将被指定为Lucida Grande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推,;
3 G8 I% v1 L3 S/ pLucida Grande字体适合Mac OS X; : g9 z6 M9 S& A' P, D5 `" G: f
Verdana字体适合所有的Windows系统; ) ?/ S4 {% S6 V, Z% `: U
Lucida适合UNIX用户 ( ^. |% ^4 I7 \3 l! W3 T. }. a6 j9 W* M: U
"宋体"适合中文简体用户;
$ C. V! h' c2 B, Q如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;! s7 m8 Q; k' Y8 }
' J! U/ \/ I0 b" J) e4.群选择器0 C2 T2 h4 U3 g7 [
& |* \) A0 `# E2 {8 j+ d0 ?
当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔,:. d$ e3 G) p" o' P0 x
" D3 q$ a5 b) `, @% W p, td, li { font-size : 12px ; }
+ O* R) i9 k7 b" m) M就是给li下面的子元素strong定义一个斜体不加粗的样式
7 b Y% N7 H o7 Z) p1 u0 F( A# y0 |$ l5 ~' x. d
6.id选择器
$ G* }* q5 [6 G; H6 m4 n
: f( K9 w* F W8 E用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层
% M2 L: h$ a+ \! ?' m4 T1 K0 Y; q( T1 D. B% {3 n: `, n) a
, c" W! @/ n! V% ?
然后在样式表里这样定义:) ]) L4 Y8 K( L0 e
/ D, w. @6 e! y" _( u3 |
7 R, M& _$ a! }' W# W0 Z#menubar {MARGIN: 0px;BACKGROUND: #FEFEFE;COLOR: #666;} 2 @ ~$ I6 U7 F( a8 n* v
其中"menubar"是你自己定义的id名称。注意在前面加"#"号。! J$ F$ ?9 g5 k0 s) Q( E# [7 L* T
! `9 {& k' A, o6 qid选择器也同样支持派生,例如:& d# M5 R9 M- C* {+ U- r
#menubar p { text-align : right; margin-top : 10px; }
" q+ s( Y0 g: T4 j这个方法主要用来定义层和那些比较复杂,有多个派生的元素。& J2 k: n' f. N. v
! e1 |' v, ~/ x" u0 i- T6.类别选择器3 Z) f, ^) n2 ~( }
6 A$ H- E) d; U3 P5 d在CSS里用一个点开头表示类别选择器定义,例如:
7 j" n; @- ^" _4 B.14px {color : #f60 ;font-size:14px ;} 9 V3 z1 }' K' ?
1 C s; S- ^2 j {6 g0 H在页面中,用class="类别名"的方法调用:' h4 t% j. ?. u% I
<span class="14px">14px大小的字体</span>
) ~3 g- H5 }: t& A" r" _8 C8 P- R) d8 j# N
这个方法比较简单灵活,可以随时根据页面需要新建和删除。
: N6 H0 M% r c+ [/ ]# o8 p8 {$ S- d9 K* w1 `( h
7.定义链接的样式
% h4 ]9 b6 o% V YCSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a : active,例如:4 a3 v C- e, ]6 y9 |
a:link{font-weight : bold ;text-decoration : none ;color : #c00 ;}
+ B' `5 F. Q4 W" Q9 C' U# l' e' M% }a:visited {font-weight : bold ;text-decoration : none ;color : #c30 ;}
6 v, z3 n$ O3 h i# t0 R8 @, oa:hover {font-weight : bold ;text-decoration : underline ;color : #f60 ;}5 K: U6 ]1 |+ W B4 o! P
a:active {font-weight : bold ;text-decoration : none ;color : #90 ;}
8 B7 D5 ?8 w# X( _/ e9 T! q
9 i. K' t- r0 v" }- S以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。 |
|