一、border:none( U" Y p6 v. f+ \
border-style的简写
* r3 F9 b- ?, I- _, f在chrome审查元素看到以下结果! j9 O: c! f3 w0 v) P) Y
代码如下:
( c" K0 d& H) f3 b/ d+ Q" ~element.style {
1 N9 ^8 }6 ]! i5 s1 W! P1 kborder: none;
% P3 y) x6 D5 p U8 Pborder-top-style: none;2 t1 n$ Z( P7 _7 G# M" i: Y- d
border-right-style: none;
1 E& `5 R4 b8 Aborder-bottom-style: none;& G0 q& V4 I8 E6 G! n
border-left-style: none;& M' G4 `) H5 _7 m8 n3 p2 I% ~
border-width: initial;( L% w$ v7 H: D4 Z* t% I
border-color: initial;/ \8 z% @. x1 T7 V* L
}
+ b8 Z; W* ` {9 Y' K在firefox中用firebug查看元素会看到以下结果:& M2 R5 r H7 l" ]1 Q$ f
代码如下:
+ O" j; s A6 |' E3 q# M1 T3 {element.style {+ p U P, d) I. J/ H
border: medium none;) v7 T; q `$ X+ Q
}! H" }/ O1 j1 A: [
注意这个medium值
5 R7 T7 s' d, Y& A2 k二、border:00 {/ W$ O$ ]3 H$ J2 G; m3 g+ t
border-width的简写
* q6 U; {4 |: a* F在chrome审查元素看到以下结果
4 x( \- ?, b! r. {4 R& h6 r) Z代码如下:% ?4 R- D: e3 O/ k3 B
element.style {2 r5 N* u4 L4 V1 R0 X4 \
border: 0;! a* p2 z2 ?2 } E/ Y k
border-top-width: 0px;0 _7 w3 N" u: t, E6 f0 U0 c5 ]
border-right-width: 0px;6 O* c$ |) X% K/ [
border-bottom-width: 0px;( h B2 _# N0 M1 Y4 B2 S, t
border-left-width: 0px;
! T# R4 p9 ], l* S8 R% gborder-style: initial;1 @" G. e3 c4 q7 d" X
border-color: initial;( o4 _% }5 F6 s2 d
}
& N2 j. S" G/ h, e在firefox中用firebug查看元素会看到以下结果:
8 ?+ e9 s: a) H6 N; A代码如下:) C6 @& n! F3 I* B, m% l# o! j9 k
element.style {
( j) l+ _0 U1 F# U7 s$ Rborder: 0 none;. l% e; ~6 S9 L2 M! \5 O* ?
}
+ ^% q% ]. Q$ B注意在firebug中border:none和border:0的区别
* _4 e+ P6 {5 ~9 Z" E3 v/ P+ j下面举个例子来具体说明下$ M8 _$ x& J4 P" [" s- M. e8 V, m2 U
代码如下:
, W3 l4 A) F/ e! q. h<style>/ W8 y% N& u2 {( o, A) b: r& }
div {border: 1px solid black; margin: 1em;}
, M* P. l$ U% P. S0 Z2 w! g.zerotest div {border: 0;}( _5 c! y) m, t! J
.nonetest div {border: none;}
! a* v6 s+ [0 r2 G' M& v. gdiv.setwidth {border-width: 3px;}
1 a- a: V0 m$ S; g6 N; E' kdiv.setstyle {border-style: dashed;}& O! X+ {! m. w
</style>
7 P6 Z, v. S5 `- h* P8 l<div class=zerotest>. c7 H: Q+ i0 h# `
<div class=setwidth>6 c3 L: O4 w# u1 l7 A7 G9 J
border: 0 and border-width: 3px+ \/ s; R' \2 |) |' y
</div>
& U! V, U- X7 A5 I<div class=setstyle>
" O4 J3 j% `3 T7 f0 P' Yborder: 0 and border-style: dashed9 Z9 Y2 o# \: _
</div>
- g9 o% W) o5 y( W* G( P5 D9 k, A/ l</div>
" u9 W& G/ d8 `9 ]# O% v- G<div class=nonetest>- G9 [, |- _8 X9 N
<div class=setwidth>
& r* B2 A9 i4 @+ p( Kborder: none and border-width: 3px
, [" v! h6 d( p& Z/ ~1 J( U8 z</div>5 @! Q# m7 z$ u$ m4 V! E
<div class=setstyle>
1 ^' r* ~3 {; K, j2 J* F4 _border: none and border-style: dashed
! G6 n& ?; o, G7 G* D</div>4 w# z+ T/ x5 C2 ]0 Y2 C6 ]5 E
</div>; ~" \7 ~5 I6 B: s6 e2 w
有兴趣的朋友可以复制以上代码在这个浏览器试一试:
$ i Z: z1 k/ }6 e测试结果:
& k& O7 h6 u" t3 `1、.zerotest .setwidth! \& f. S. }) M) P+ [# A' f: e
虽然定义了border-width:3px,但是border-style:none 所以无边框(ie7会显示3像素的边框,这跟border:0解析有关。下面会讲到), ?7 G) i& ?. K2 Q, C. y
2、.zerotest .setstyle
0 |2 A2 `) s1 a3 s! q虽然定义了border-style: dashed,但是border-width:0 所以无边框+ M3 N/ Q) P! `% {
3、.nonetest .setwidth
: k' _+ R; h+ o; Q% y) q2 Z虽然定义了border-width:3px,但是border-style:none 所以无边框(ie7下无边框)
9 W8 A7 k! T$ p" E1 ]5 t. k5 f4、.nonetest .setstyle
9 c5 U5 _6 Z0 m0 ]6 ?6 [定义了border-style:dashed border-style为默认值medium border-color为默认值black 所以会显示3像素黑色的虚线框(ie7下为一像素)
$ M% d$ y) U4 W4 B/ g综合1、4可以分析出在ie7下9 p n F! X% E0 x: q
border:0 被解析为 border-width:0
/ p! [; g8 \3 G# zborder:none 被解析为 border-style:none! t6 j% J+ Z$ Y' w- Y
再来看看标准浏览器( z) E- D- ^# t3 t
border:0 比 border:none多渲染了一个border-width:0,也就是为什么border:none的性能要比border:0高7 a% k! t$ C( x3 g; P( H/ @
所以建议使用border:none来实现无边框效果& ?8 W" W8 T# A; s
/ q( M. r' w" K! y1 M% E
更多网页制作信息请查看: 网页制作 |
|