使用display:inline-block会出现的情况:
" b) _. P# H: O+ v: ?+ s- b1.使块元素在一行显示9 f; w% R: G# \0 ?" _0 `, A
2.使内嵌支持宽高
0 X2 I4 d/ V, [' E6 u, M3.换行被解析了
0 |2 D, h1 Z# }) T8 Y4.不设置的时候宽度由内容撑开
4 p0 q% K0 |' y3 R) } E7 S5.在ie6,7下步支持块标签/ f7 F' B7 Y" A" z) ?3 j' t
由于inline-block属性换行的时候被解析(有间隙)故解决方法使用浮动float:left/right
9 o* p1 V# G5 t$ R: G1 a使用浮动时出现的情况:
. s5 G" K$ C+ w1.使块元素在一行显示& V* `$ H, _8 f5 U
2.使内嵌元素支持宽高8 d: S- X& ?7 k0 j! V3 O
3.不设置不宽高的时候宽度由内容撑开
3 s. J" W1 y, u# [, W6 o4.换行不被解析(故使用行内元素的时候清除间隙的方法可以使用浮动)
7 K2 o' P y6 I5.元素添加浮动,会脱离文档流,按照指定的一个方向移动,直到碰到父级的边界或者另一个浮动元素停止(文档流是文档中可显示对象在排列时所占用的位置)" L$ j! y9 I: J8 C! D; C
2 x! U ~8 u, T7 h
代码如下:
% s" D/ r3 Y1 G' J1 _ d<!doctype html>& P& l0 |7 G3 q2 T
<html>" b3 x/ }4 }8 }" w6 p% v
<head>) f/ f8 H+ w5 |6 B7 _& ]
<meta http-equiv=content-type content=text/html; charset=utf-8>
* h+ O* I9 c$ H3 X$ |3 M' r<title>无标题文档</title>8 ?4 T" p* ?( H$ p
<style>% e+ O! f/ G I; }5 F; [4 W& S
div,span{height:100px;background:red;border:1px solid #000; float:left;}0 U4 p$ ]9 h' u# W+ ~3 T
/*
& p8 {; R. K& Z: X7 R2 s& Cinline-block& T& ^( U% y7 D) a. t3 b( Q
1.使块元素在一行显示
' Z3 {2 J' } X3 |) o4 O2.使内嵌支持宽高
! Z: |# q* o% b' v6 ?' E# s3.换行被解析了; S" s+ ?+ ?; U E, c
4.不设置宽度的时候宽度由内容撑开( V/ Q6 M. G+ {& u; e% U: N, k: B
5.在ie6,7下不支持块标签- O6 p4 j7 J" P# w, [8 C
浮动: ~4 E- {0 f% S5 U9 R5 v' C6 |
1.使块元素在一行显示
- W4 z5 D+ Y! I( E2.使内嵌支持宽高
' }3 d [+ v: J: j$ E3.不设置宽度的时候宽度由内容撑开0 {$ q% v6 Q# o+ _
*/
3 a# U$ c2 ?% |, t3 X</style>
; F3 g6 i6 Y( k/ R# Q1 q1 I) G</head># e" q( V E+ m* g% Z" H
<body>
" H$ ~3 d, q6 @, {3 o3 [; n" \0 o<div class=div1>div1</div>! Q; P) f# \4 s" }; n! ~
<div class=div2>div2</div> H: c6 O4 L" V8 G
<span class=span1>span1</span>
2 @* ?) r2 n0 J8 ?& i5 R A9 O<span class=span2>span2</span>4 E! r' d) `0 B" v ]# e8 v2 x5 ]
</body>4 z }1 |' E( a; A
</html>5 X2 {- K% v5 X. I
- q! m0 J+ f' N2 R7 R+ j下面的代码只有box1浮动,则box1,box2重叠一起。两者都浮动就不会重叠
6 H% {; O! E3 e" ~( G2 W* u代码如下:
{ c# B) N, L5 X( o5 m3 y' J3 `<!doctype html>
# D- N; f& t3 W4 a2 H( \<html>, H* a+ r/ n) h7 R
<head>/ l- T5 j* D- i% F, m* I
<meta http-equiv=content-type content=text/html; charset=utf-8>
' r4 R0 C4 O ? U# D/ k" y3 j<title>无标题文档</title>8 C) g+ ~3 C- [, k0 \( k
<style> @8 W! L& d2 h( w( {) l, C
.box1{ width:100px;height:100px;background:red; float:left;}" o% u e, g, F. k$ I/ k; b
.box2{ width:200px;height:200px;background:blue; /* float:left;*/}
4 d- V9 t% D4 s Z</style>- l2 q( Y6 p ]# E
</head>
# g4 R2 X! S. i8 C<body>) a) ^+ D6 A) n5 a6 c6 I; W
<div class=box1></div>! i9 @' X1 L! n6 P3 r2 f5 U
<div class=box2></div># o9 ^) S& `3 \) }- u6 \$ I3 q# c
</body>: n: L6 ?: H- n$ w: L9 e) R
</html>
& t! v- S& A. M+ F' ~
7 {& k3 R1 w3 e4 \& E清浮动的方法:; J4 L' w. J4 H4 A
1.给父级也加浮动(这种情况当父级margin:0 auto;时不居中)% L% D$ }; Q7 J* t6 ~: d7 r6 N* |; `# t
代码如下:
: i4 U( D6 z) a P% `% B7 M1 i<!doctype html>, n ^5 v# N1 h) Y9 k7 ?
<html>
5 y8 k/ }6 p2 g' e! I- I<head>- d1 \- ?. T6 N2 e! A
<meta http-equiv=content-type content=text/html; charset=utf-8>
4 v8 O' ]4 N4 ?9 Z5 o5 e, s& v; y<title>无标题文档</title>
- J( V. H" k' V, f: N8 f9 r<style>+ Z8 B; h' L9 d# b& m
.box{ width:300px;margin:0 auto;border:10px solid #000; float:left;}
0 o: z. ^( U, u" C; Y.div{ width:200px;height:200px;background:red;float:left;}
4 C w: E5 q w% t/** G7 v# e ~1 O0 y5 K- s/ N9 }& H
清浮动
' X% L) F* d, \0 P9 |# H1.给父级也加浮动(不居中了)& Z1 g4 o2 d: r; A. o# G2 a; U
*/. f9 l: p: I9 R& U
</style>
* u. @/ C" o/ G+ ]* S; N3 X' M8 j</head>8 s1 }$ F- C9 M- ^2 p
<body>
7 ~0 f% m* s( L4 i1 |<div class=box>
1 S$ u, O, G7 V* |) @7 |4 e1 o9 {- K<div class=div></div>4 _0 w4 M3 j$ P. j% q8 I8 T7 j
</div>! _9 W, Z4 B; w- j' X: b+ T& Z# A
</body>
7 w& o1 ~, F4 t! P</html>
' D! d1 E) B0 C( ]5 |1 c5 D- @
3 j4 H9 j f3 n" Z* u" e2.给父级加display:inline-block;(同方法1,不居中。只有ie6,7居中)+ G; h7 Y% h( x) G; P* |/ h+ ?+ ~0 Y
代码如下:9 I3 s9 W0 {; \& d6 M5 O
<!doctype html>
9 ^6 I- B; L/ N$ s5 c1 A: j0 p<html>( L/ j) r. N; g, L4 h$ Y
<head>
- [; M! m6 W% o9 v0 O9 l<meta http-equiv=content-type content=text/html; charset=utf-8>6 R9 H' J0 R- I2 b
<title>无标题文档</title>
9 R/ o* v: B2 h0 J: p N: z+ n0 B<style>
, ]4 `4 l# Z+ u. d; s4 X* v.box{ width:300px;margin:0 auto;border:10px solid #000; display:inline-block;}
: T6 z) y) I8 E: W' [/ L% f, t$ {.div{ width:200px;height:200px;background:red;float:left;}9 l8 p2 Y0 r: y6 v9 T- ?. P
/*4 B* U# t6 u( K! {$ w. B" C
清浮动6 N1 k. @. K# N& J" t u* v3 W* w
1.给父级也加浮动$ l" c' r1 E1 ]" L; j" @- i
2.给父级加display:inline-block
) l" |1 W& x) j- _; l9 \8 g*/' C% H; u2 A8 R0 T# g6 e' Y
</style>
7 r+ C- h1 ^6 w( w# O( S</head>
3 O, j9 i; E( P3 E! i% h4 x# W<body>
* V' }$ O# v! w' X- k<div class=box>
% N d5 B: B+ X+ B5 |; |. | X<div class=div></div>
7 u: G! J9 s# q+ B: x</div>' d+ f- c' x* T& u" ?- v
</body>+ S0 s9 Q* }% [/ z9 j% m
</html>( o1 @. i# [. Y2 f2 T* L
, `) s: S4 M- d3 R6 t+ X3.在浮动元素下加<div class=clear></div>7 J& f( j/ `2 z+ V) N
.clear{ height:0px;font-size:0;clear:both;}但是在ie6下,块元素有最小高度,即当height<19px时,默认为19px,解决方法:font-size:0;或overflow:hidden;
" J4 i& U9 l$ e0 x9 T8 V代码如下:2 P% }% U* V% [3 e$ C7 D8 e
<!doctype html>& G5 S* ? I$ q6 D& i
<html>3 S, f# r! U$ G& x+ u1 D
<head>* `+ N- u; p" c$ A5 r1 e% Q6 R
<meta http-equiv=content-type content=text/html; charset=utf-8>
8 u5 `/ H6 e9 F4 P/ [ \0 h<title>无标题文档</title>& ^0 A0 x: c& Q8 z g$ z
<style>1 U, c t8 k; P3 k# z
.box{ width:300px;margin:0 auto;border:10px solid #000;}( H# q' j4 X3 L' b @
.div{ width:200px;height:200px;background:red;float:left;}
k1 i W% t: g6 Z. x.clear{ height:0px;font-size:0;clear:both;}
& @- @1 T0 E1 E7 R$ F; M9 a/*
# |5 e6 e- |4 Y" W2 m+ @) [清浮动
1 E! a+ j' D! I ~/ W1.给父级也加浮动' C0 j+ R; g3 u2 L( A) ~) I: v: D: Q
2.给父级加display:inline-block$ i9 I$ W" c! }/ ]0 [
3.在浮动元素下加<div class=clear></div>
- W9 Z" C y5 n; b.clear{ height:0px;font-size:0;clear:both;}$ a; [1 J; c" ]0 A5 `5 w
*/
) s& ?# V/ y! Y" |" m5 ^/ U* b</style>
4 u9 ]( o( j4 X</head>
% v3 g/ c& g1 z# Z& f, h- O* O<body>
* d" a/ m/ S/ O9 X$ V; ~6 C R<div class=box>3 b# W/ O; G& E( o7 f
<div class=div></div>- ~$ m6 o* d% J# X0 A
<div class=clear></div>: u' X$ Z$ o- j
</div>
: Q! ] L" ? [- E& l# l* @</body>
9 o6 N5 J4 J) Y N</html>; N6 o6 @* g( @7 D7 o; V4 h- W
4.在浮动元素下加<br clear=all>
7 i3 I: L( ~$ K1 X! W4 U+ R; \代码如下:
' X; P9 E, e3 w) t. B<!doctype html>
5 f4 l0 Q( b" b, j<html>" E) X& s6 H5 k: |0 \1 t$ E# \5 d
<head>( _9 Q1 k6 ?$ v5 g
<meta http-equiv=content-type content=text/html; charset=utf-8>
2 u9 `/ M; m5 Y1 N0 I+ o1 \8 l<title>无标题文档</title>. k/ `5 r$ g8 k
<style>
3 I$ |! ~8 T( O7 a: N% v.box{ width:300px;margin:0 auto;border:10px solid #000;}7 {; ]/ p* S: Z1 z, |( A
.div{ width:200px;height:200px;background:red;float:left;}
2 N* v0 E" b+ T' L/*/ f. {: J. v4 G9 O( [6 C
清浮动! c" U" @5 F' G w @
1.给父级也加浮动
9 Y8 C+ h- y- C% M5 B$ x/ Z2.给父级加display:inline-block9 f: o3 O' {2 C- L
3.在浮动元素下加<div class=clear></div>
9 S. z. N3 `4 I3 C.clear{ height:0px;font-size:0;clear:both;}4 k1 l4 A. R8 ^7 O% ^! L% h
4.在浮动元素下加<br clear=all/>
3 K3 L8 k: y. P( f. U3 l- m4 v*/
' x. P7 l0 L5 \7 u C</style>
# b! f: f0 D" s& S: Y1 N</head>
+ v- g2 v; f9 P: ^- M2 E2 J& _7 S<body>9 I: M" Z! a5 {8 p" h
<div class=box>! w/ x8 v$ m7 A2 Y |: d8 Y
<div class=div></div>
! F' P9 Q( `2 } }+ V$ g) z4 v<br clear=all/>
6 x$ f( ~4 a+ K' U</div>* P" v( T" R/ ~$ x1 o; Y" x' v
</body>
: R" }$ }+ [5 \- N- u</html>5 Z; v; q7 E$ T" E& i t" K" ^
5.给浮动元素父级加{zoom:1;}8 P3 H1 ~9 s/ E" }
:after{content:; display:block;clear:both;}
2 @+ m/ F1 L) e: ?% U6 q代码如下:
* l' b8 p; [0 r5 @0 V<!doctype html>
! m# h5 `/ c* `6 P# V: I5 O<html>% I) K8 J' y! O% C2 |6 f* F
<head>9 [% H, F- l' Y( ~" l
<meta http-equiv=content-type content=text/html; charset=utf-8>
% F- o0 ~' r+ E, {" \<title>无标题文档</title>
5 ]5 l% w0 }- v5 r0 |<style>6 _* X- a5 A$ H1 f
.box{margin:0 auto;border:10px solid #000;}
3 t% ?2 W, ^2 x& |" R( s/ M.div{ width:200px;height:200px;background:red;float:left;}, l) q/ s: S8 f
.clear{zoom:1;}% E' X& O+ }8 _! }5 B
.clear:after{content:; display:block;clear:both;}& T, B, k+ u. f1 @
/*
- O$ b4 T1 V3 P+ Z% [: r清浮动+ @$ f( U3 P. M; u& g
1.给父级也加浮动
8 c6 Z) v( k) p% X/ H2.给父级加display:inline-block
0 B7 [7 s, S' K( } t T/ D2 E0 B3.在浮动元素下加<div class=clear></div># D& G& H* |' X+ M% m
.clear{ height:0px;font-size:0;clear:both;}
* G' c4 ]% i6 X$ {4.在浮动元素下加<br clear=all/>
" X7 P% \8 @3 ]; A/ g, O$ f5. 给浮动元素的父级加{zoom:1;}' L; o' \7 q& p x1 E7 S
:after{content:; display:block;clear:both;}
v- c: v* n8 ~8 i- u+ k**在ie6,7下浮动元素的父级有宽度就不用清浮动4 s- B9 Z ]5 J4 e$ r1 V
haslayout 根据元素内容的大小 或者父级的父级的大小来重新的计算元素的宽高
( F K9 k2 e+ ?( gdisplay: inline-block
5 a5 W& X5 `" [/ nheight: (任何值除了auto)( n# X. B$ f7 L# }
float: (left 或 right)
1 k, ?% [ E" ]* [) V J4 @+ pwidth: (任何值除了auto) f# p! }" t3 x
zoom: (除 normal 外任意值)
p- z# j2 Q6 ]- r% T*/
9 Z/ ]- o4 D4 Y* d7 u</style>* |1 l( q$ c! m8 P, K
</head>: _" |( o0 ?3 W
<body>
4 _$ U, o; H( ~6 X, g9 h! e' u* C5 w<div class=box clear>/ w% G- |" U5 C- s& v" K
<div class=div></div>2 F& j7 Z7 T3 m, v. M
</div>0 C" g. k& c* `2 W# t
</body>
) |. q+ A, o# r0 Z, E</html>" A) l/ E$ g; O6 n& m2 X0 t
6.给浮动元素父级加overflow:auto;0 {( {/ \) P1 E! ]* O6 y! J
代码如下:
2 B+ w ~; _4 s2 h- |( u. |<!doctype html>
7 S B3 x4 L1 C+ H- a: r+ H s<html> E' j7 r: e; l
<head>
' i/ G+ ]/ V p A<meta http-equiv=content-type content=text/html; charset=utf-8>7 L) \* r& `1 j. Y% b$ K
<title>无标题文档</title>
1 L1 k. q0 _# b: m% B6 M- m<style>
; O$ I' k8 m- e$ h1 s- |: L.box{ width:300px;border:1px solid #000;overflow:auto;}" Z# z0 x _0 o0 v" }7 ~$ ]3 S
.div1{ width:260px;height:400px;background:red;float:left;} O1 \& |; G P' l
</style>
: j* k1 L: Q" V0 f7 ~& M" |, q6 r</head>' [( s* p% X& j# ]. d
<body>/ V) _0 b g- k
<div class=box>
1 r" V- O$ c5 W( _" c: Z- i7 i<div class=div1></div>
- A; N. N* @( a# z, v</div>
% y4 @3 k+ _ x4 A</body>4 |) V5 Y0 B, S
</html>/ l( ^2 G7 y2 B0 T: x. f
- Z8 D4 t5 S9 C0 o, O" z% I3 `
更多网页制作信息请查看: 网页制作 |
|