一、border:none
/ Q* p4 z ^, g; Z3 Zborder-style的简写
8 K7 f# G6 V. i0 h& E在chrome审查元素看到以下结果1 ~- O, |# O0 ?( i, o0 b
代码如下:
9 T1 T5 n8 o8 m! aelement.style {
- M/ Y4 Z: T$ Q# r2 `# ~. t7 gborder: none;1 ]# B. b6 z: Z, ?( h5 X% W. C2 m
border-top-style: none;/ ^6 S8 a0 z$ Z/ O# k% j
border-right-style: none;, w* K9 i3 P! E8 g
border-bottom-style: none;
0 z: k, e8 u+ Q$ L+ Y' e. F: }border-left-style: none;4 _: e: x$ n) a/ h. P9 ? k2 O
border-width: initial;
) G1 }; d6 ?3 Q, f. R0 ?border-color: initial;
( u% G; }/ r1 |3 l}
3 D" j0 w) |! }在firefox中用firebug查看元素会看到以下结果:
" X. D" H4 [9 N8 ^代码如下:0 r6 f+ p8 n# q" l% J0 o
element.style {: B f3 q8 T- j5 Y$ i4 H
border: medium none;. c+ w& v* U# X4 y9 \2 P5 y1 a
}8 x4 y$ W0 `! L( R, B! m
注意这个medium值3 y: `& B f' e
二、border:02 p+ K1 v6 Q0 m" [& r% u
border-width的简写% x5 Q$ r$ A7 N" k9 T; ^+ b" U) Y$ s1 ?/ y
在chrome审查元素看到以下结果
; V m. ?3 }& f$ ~代码如下:
; y" I- h/ o! Jelement.style {. G w- c$ Q% A t4 w9 B* d# j
border: 0;2 Z) c8 S6 B; Y" X7 O7 p' a
border-top-width: 0px;
! s; c. l% `: l) V! ~: Tborder-right-width: 0px;% `4 |, \1 x) `# S4 ]
border-bottom-width: 0px;
6 m, ?" p' h7 H; z4 x1 p Zborder-left-width: 0px;7 i$ m+ |' p$ n6 }
border-style: initial;
/ C) G' k3 b, J$ ~& H1 Iborder-color: initial;
9 P" l; L- O; ~}6 ~, P& c$ v; E, A/ Q/ _& `
在firefox中用firebug查看元素会看到以下结果:) x$ R6 z3 ^6 m: d4 V) ?# _6 S
代码如下:7 A: K! R" O% |
element.style {
7 k+ t4 w6 N, V% W* Hborder: 0 none;$ x# a9 K* x4 W0 }/ @
}% ?7 h N, Q e/ O* Z& b- V; n6 s
注意在firebug中border:none和border:0的区别! q1 F0 j7 Z7 b, g3 S9 K; @7 T
下面举个例子来具体说明下
6 C1 S/ U6 w8 v5 K% \: K, y代码如下:! i. P: |" K, \& Y+ C) W! u. |
<style>
- X- a* q" |8 y# N4 H) s; [div {border: 1px solid black; margin: 1em;}
2 b6 \0 w; n, O.zerotest div {border: 0;}
/ F' K+ z. g/ p# w0 {.nonetest div {border: none;}* ?8 L; L3 b$ P1 f( ~
div.setwidth {border-width: 3px;}; P+ k" g/ X9 _- f
div.setstyle {border-style: dashed;}
- k/ S/ g+ y/ f0 H2 b! b</style>2 J2 n) w3 G4 L Z, {/ m, N5 H
<div class=zerotest>4 e3 T# T c. {4 i9 j+ E
<div class=setwidth>
2 j$ T: s6 W' b4 {border: 0 and border-width: 3px! Q3 i& W: P/ p( i9 Y
</div>
& _( ?4 i& M/ d) T$ b W<div class=setstyle>0 T4 t: u' {; Q
border: 0 and border-style: dashed: U0 {0 a+ B7 j
</div>
& D) p- n$ E8 V</div>
. J |/ J, ^& e. k: T& E<div class=nonetest>) u6 ^+ H/ k. E; F3 n0 f, c
<div class=setwidth>
% V S" J# J/ eborder: none and border-width: 3px
9 X; P5 L' g6 ?* T: U</div>7 ]/ m6 M; N* O$ P( D
<div class=setstyle>9 ?& Q. M' ]- G0 B7 V! f5 K+ Q
border: none and border-style: dashed& G- o/ J% {/ ~- G+ i4 Q$ r
</div>
% f& j# s8 C* [. b7 l. x</div>/ t8 D* f# ~2 m
有兴趣的朋友可以复制以上代码在这个浏览器试一试:
4 a8 ]2 ^2 W6 ~测试结果:
/ i7 P2 ]8 G& g3 L+ a1、.zerotest .setwidth5 ?+ P$ n! L: U: i2 l' D% }
虽然定义了border-width:3px,但是border-style:none 所以无边框(ie7会显示3像素的边框,这跟border:0解析有关。下面会讲到)* f' i8 g2 ?* ^
2、.zerotest .setstyle
+ Z3 }2 N" y8 r! `# o# z虽然定义了border-style: dashed,但是border-width:0 所以无边框
8 n! M( _8 @6 v* o M7 b+ |3、.nonetest .setwidth( J T3 y1 y8 ]* x3 j0 I5 H9 W
虽然定义了border-width:3px,但是border-style:none 所以无边框(ie7下无边框)9 q7 Y' T9 j0 T7 N8 n( a9 F
4、.nonetest .setstyle
. w/ k6 ^' j' ~定义了border-style:dashed border-style为默认值medium border-color为默认值black 所以会显示3像素黑色的虚线框(ie7下为一像素) s+ {$ F Y" e
综合1、4可以分析出在ie7下% @# O) ?* i+ ~( B1 o
border:0 被解析为 border-width:0
( F ?7 A% d9 v7 Iborder:none 被解析为 border-style:none4 Z) ?$ v d% y5 C8 J) @- l
再来看看标准浏览器
) i4 w; G& t5 l( Mborder:0 比 border:none多渲染了一个border-width:0,也就是为什么border:none的性能要比border:0高
2 H$ y: R9 [9 \6 O8 `所以建议使用border:none来实现无边框效果
7 Z, d$ @' n& m( L" N, J. f8 Y: L) U9 G; `9 g0 q3 B/ `
更多网页制作信息请查看: 网页制作 |
|