使用display:inline-block会出现的情况:
, x$ m+ g T1 O- ~1.使块元素在一行显示
7 d: v. H$ P7 `/ d% H. C2.使内嵌支持宽高
d* h, j4 l/ v) E. H6 r( z3.换行被解析了
, y# p7 i/ o- j3 b. Q; G( L4.不设置的时候宽度由内容撑开
$ U$ i/ ~# ]# b5.在ie6,7下步支持块标签
0 i: W+ @8 ?2 U, r由于inline-block属性换行的时候被解析(有间隙)故解决方法使用浮动float:left/right* t* F* }7 C$ Z5 p/ k+ [: P3 [
使用浮动时出现的情况:, C( g: P$ ^/ l2 t$ C
1.使块元素在一行显示
1 a8 m/ a8 G$ E6 R6 J. C: A. b0 b4 F2.使内嵌元素支持宽高
- ~, }1 c8 m2 o! O; G3.不设置不宽高的时候宽度由内容撑开# S) w3 g* {# N ^7 Z- r. v
4.换行不被解析(故使用行内元素的时候清除间隙的方法可以使用浮动)# v- K2 y/ y! u) A3 E3 ]
5.元素添加浮动,会脱离文档流,按照指定的一个方向移动,直到碰到父级的边界或者另一个浮动元素停止(文档流是文档中可显示对象在排列时所占用的位置) _& w( ~. G! l# y4 U3 x6 T
6 n6 V, {( q' u; v Q9 q: z+ ]
代码如下:
9 q: E( `9 H- c4 [9 k$ ?6 T<!doctype html>
! p: L# Z' x9 _8 Z/ s' |<html>
. K+ M' M$ c! I: F; c1 j<head>
: s/ _( g0 L' t4 D0 ]9 T. s, T<meta http-equiv=content-type content=text/html; charset=utf-8>
( d1 o( @* _. q<title>无标题文档</title>
9 h- y. D2 T0 Z9 G<style>" t" _! Y7 a6 P8 L* Y a
div,span{height:100px;background:red;border:1px solid #000; float:left;}: S6 d) Y0 i1 ]/ [$ L0 @3 G6 T
/*1 Z5 }8 K2 R2 S$ I
inline-block
- v, Z2 t( `2 x" S9 f& {, M1.使块元素在一行显示 x7 d, p) R( Y
2.使内嵌支持宽高( R0 E" H: F) d5 t- e7 U
3.换行被解析了 h5 h3 @9 I1 s4 X" ], @
4.不设置宽度的时候宽度由内容撑开
$ d8 K5 ]& a) l0 N# J3 {5.在ie6,7下不支持块标签
- g J( [- Z# e1 t# D1 [( P浮动:; A0 b, e! {3 Z5 q
1.使块元素在一行显示( D/ t+ I9 ?" |5 ~
2.使内嵌支持宽高
/ S( L/ Y& y; F# N7 z3.不设置宽度的时候宽度由内容撑开
7 c( C/ f1 y3 U$ B) v*/
: X2 j: }" i0 _. I</style>
3 j1 B0 }! c6 J, C5 ?</head>/ I3 M3 n. d9 T7 u9 k7 N. g
<body>
4 Q% d' K3 @5 B+ O<div class=div1>div1</div>
9 @# ]9 u5 V& H5 Y! Y" T<div class=div2>div2</div>" M6 p7 d: b4 R' u$ b
<span class=span1>span1</span>- X: e5 X% o' \3 ^
<span class=span2>span2</span>
6 Y! ]7 K1 v2 S5 F</body>
: b" u: b; w# X6 a3 h* G</html>1 F; c" z& D, t( Z/ H/ Q
+ N% l s. i1 F" j! D
下面的代码只有box1浮动,则box1,box2重叠一起。两者都浮动就不会重叠5 f% D( b- j+ b+ [9 R
代码如下:$ ^4 Q0 B: X8 b" O3 A
<!doctype html>& Y' F7 E/ t! _5 `
<html>
% ]' Q. _( G8 r6 t4 G% R* b<head>
7 b! @' ^3 m! P; P9 }5 ]$ G<meta http-equiv=content-type content=text/html; charset=utf-8>
0 P' S3 c% ?6 m0 J<title>无标题文档</title>1 P5 y: s" p' N$ l) \- D; `, l
<style>* o9 R, Y! d* D2 K# P& P2 x P
.box1{ width:100px;height:100px;background:red; float:left;}5 \% w3 l' }9 _8 b: [
.box2{ width:200px;height:200px;background:blue; /* float:left;*/}
4 L2 d/ v4 f+ l7 i0 Z; B* { v! ?" O</style>9 O& G7 q' c# F$ f% v
</head>2 Q6 S: y, C* l6 L/ _
<body>
( I5 H1 |, T0 y% k/ A$ }<div class=box1></div>( w- p7 O# P7 }7 ^. ]
<div class=box2></div>' E/ E Y' Q, ~' N- w7 Z
</body> v1 }0 A8 H8 r, @* m. `7 [
</html>
" T0 z& O0 x V7 z
& H a1 U* j% o* w清浮动的方法:1 n* C, N: I6 W# ]
1.给父级也加浮动(这种情况当父级margin:0 auto;时不居中)
$ f& x: f% }% Y9 j% l7 u代码如下:
" w' s" d& B7 ]0 s' b<!doctype html>2 [3 f8 A+ d7 M; C+ y4 I
<html>
1 Q# E" F" T6 ?2 Q<head>" O+ z9 X7 Z* @- n. k7 U
<meta http-equiv=content-type content=text/html; charset=utf-8>. C. G. D+ q" ?' \; g- O5 _
<title>无标题文档</title>& a+ t2 l; b8 C. b; E4 g) l. G
<style> Z! f9 F* D& a6 n) p8 ^
.box{ width:300px;margin:0 auto;border:10px solid #000; float:left;}
" H' s( }$ F, c- n( `0 a.div{ width:200px;height:200px;background:red;float:left;}; l4 E' F3 m0 c+ [2 j$ t) T9 ]0 M
/*
. ~0 g+ |" E7 z& p( [清浮动
4 x: C1 n Q7 B; ~* D5 }1.给父级也加浮动(不居中了)9 } ]2 y* {( I
*/
D- ?* K; c% t8 ~$ A, ~" w2 k</style>
$ D" |/ j" K' ^0 `. i</head>( \9 Y# k$ Y' Q4 M, g
<body>( |9 q. o0 B; a7 {
<div class=box>
t3 {8 A9 J, o, c. ~<div class=div></div>
7 W( R/ I$ [0 B: q' s9 V# F: X5 ^+ N</div>
/ v3 Q/ h) y1 u% b6 Q1 a3 q5 B</body>
/ R: P0 ^9 @& @0 B! c1 M4 y/ `</html>) i4 J6 Q! b3 D( z7 \- ]1 J$ g
$ A0 I& `2 t1 i5 a8 n; n Z7 i
2.给父级加display:inline-block;(同方法1,不居中。只有ie6,7居中)) e8 f, X( g% ?: \
代码如下:
5 l# _: c; i; Y<!doctype html>
3 T$ w! {+ L8 k<html>
1 Q0 s# d( t& v8 y* F7 G; Y0 J9 f<head>
) P+ A. s9 l. q- a<meta http-equiv=content-type content=text/html; charset=utf-8>
y0 S% `+ u" Q$ {! y* ?<title>无标题文档</title>3 |3 N7 r6 \- m8 a, h; t$ f" ^
<style>- e& J5 m. }0 z/ a+ N
.box{ width:300px;margin:0 auto;border:10px solid #000; display:inline-block;}
& Z5 ]+ K% }% Y; ], V.div{ width:200px;height:200px;background:red;float:left;} l0 O8 o/ J' C3 y) P1 V3 {
/*
8 p& P: v4 G/ ~) S& _% G清浮动' s6 ]; {) m/ x* ~/ L* t7 d5 _
1.给父级也加浮动5 W9 W ]) N2 P- g L
2.给父级加display:inline-block [ f! X; N* J
*/! H$ ^0 O, a- b; ]) D
</style>
# N3 f/ W4 ^1 p. Y: {" |: b</head>% a& H0 o: l! v/ S
<body>
* _; ~5 Z2 x" ?. g# a L! M5 v* A- o<div class=box>
' A( o. z+ k7 W8 i; ?<div class=div></div>
6 C- z6 @' u. v; m</div>
& r5 W. F. }/ w( c0 t</body>
' k: D" O1 D( p9 a+ u1 Q</html>. `+ b0 S$ J0 V: @) r1 o/ L
; L- P& m. j" H+ W8 A. f5 \9 l D4 |3.在浮动元素下加<div class=clear></div>+ w3 A- W3 l O; ]' A
.clear{ height:0px;font-size:0;clear:both;}但是在ie6下,块元素有最小高度,即当height<19px时,默认为19px,解决方法:font-size:0;或overflow:hidden;0 P4 F* {" i& @9 f* }0 ?4 M
代码如下:
" N7 F! i/ ]; ~) \' e<!doctype html>
' V9 n/ X0 \( l3 U( C3 m+ [<html>
3 s- N' H: c6 D6 G) y- R A* Q<head>
8 O. k) \/ n- P) N' L<meta http-equiv=content-type content=text/html; charset=utf-8>4 U7 H% q! V8 [6 e8 R( @
<title>无标题文档</title>1 w( ]. }8 ?5 O: ~) I
<style>
; b; X1 c+ }4 v7 k* A.box{ width:300px;margin:0 auto;border:10px solid #000;}, I: C) |8 i) J: A6 [) z+ {
.div{ width:200px;height:200px;background:red;float:left;}
2 A3 M' s0 q2 t4 g.clear{ height:0px;font-size:0;clear:both;}' L" B, J1 ?" S. |% B! n) b4 O
/*
5 W, D, Z% j# f6 g" g% a! E清浮动
5 [( }0 G+ f7 y0 l* h6 M. x1.给父级也加浮动/ J! J; U) m' O0 y! x
2.给父级加display:inline-block
" y/ l. D6 x! I5 q' A* F& B( H3.在浮动元素下加<div class=clear></div>2 e1 I! l; A* F, s* n% X, o9 d+ _
.clear{ height:0px;font-size:0;clear:both;}! }" C/ G w4 z5 ?* \+ Y
*/
7 y# t/ b6 Q+ m5 \# R</style>9 k& m* z! e( @" J0 r5 L# q' Y
</head>( ^$ i8 ?; o5 O
<body>2 Z6 F8 F; d/ N
<div class=box>
g$ U n$ e, R7 n9 K8 U% ^: h<div class=div></div>
8 r3 f) H, x9 u, y# O* n<div class=clear></div>" P: r5 x; e$ x6 f5 D
</div>; T. Q4 P! Q' s0 j5 |5 ~: K) @" ^
</body>) i$ V8 P, K' m% a
</html>
1 q! _3 Q9 J8 w+ w+ q" j4.在浮动元素下加<br clear=all>
# W! |5 t u: X" c3 b/ B: Z代码如下:: Z4 @" r5 D% R% v& ?
<!doctype html>- W3 [( @) O- u* Q0 h/ o! S' k6 [
<html>
9 H+ r+ D5 X \) A" s% _0 ?$ d<head>
: y: ~7 }1 ], i<meta http-equiv=content-type content=text/html; charset=utf-8>3 G. B3 c8 r9 `
<title>无标题文档</title># t [3 h* h F( k" J/ m
<style>: a9 m3 H4 l4 u9 V
.box{ width:300px;margin:0 auto;border:10px solid #000;}
, J* u& u: O$ P: P2 I( u" I1 \0 v.div{ width:200px;height:200px;background:red;float:left;}
6 f8 F# d% S( y5 U& l+ Y# `/*0 _6 {8 \+ j. v
清浮动
7 m" f* P) _- B: A1 ?1.给父级也加浮动
8 ^# j/ e$ X, G) ~2.给父级加display:inline-block. Z2 t8 O' Q6 M0 {, X$ Y; n) F: x
3.在浮动元素下加<div class=clear></div>; ^$ n# ^7 a. d
.clear{ height:0px;font-size:0;clear:both;}/ k( Z+ O% i. F
4.在浮动元素下加<br clear=all/>" E8 g! ]% n3 J8 S. X5 S
*/
! L3 v% j" g# r8 S% c' X</style>5 w# S7 F1 f4 {
</head># L7 S4 p f8 {* Q5 ^, v, }
<body>7 n( v) i- _& x1 y2 }7 N
<div class=box>& i2 v" z# E4 K5 N% ]- b: f( g
<div class=div></div>
: x! a$ g" ^) C7 `+ r$ }( M' C$ U<br clear=all/>
& W" ]9 \1 i; @3 U</div>
- }( \ m9 ~* T0 F0 q2 L! t8 F</body>3 N8 G' b1 |9 c5 s" [1 o
</html>0 x U* B/ e6 T$ f# f
5.给浮动元素父级加{zoom:1;}& e! t5 z! U: B- X6 V" U; L
:after{content:; display:block;clear:both;}$ k& v7 {* T, z3 W+ x- R
代码如下:
: Y" }6 i' F4 O3 d& L' v$ @" `<!doctype html>' Z2 l/ A. V, j7 t
<html>
8 t/ v0 [/ I u. B* {<head>
+ [/ g7 |! O) H# y% N<meta http-equiv=content-type content=text/html; charset=utf-8>
+ ~1 A* c7 x. S* P# o<title>无标题文档</title>
5 U- [* f4 V2 `# A* p0 m. ?<style>' B6 }' Z: D" w/ U' q. {+ W
.box{margin:0 auto;border:10px solid #000;}4 _0 Z$ e4 W/ {& E
.div{ width:200px;height:200px;background:red;float:left;}$ `$ ?( A& o9 f# W2 S# F6 K
.clear{zoom:1;}, e) X! O+ h2 Y' Z6 T
.clear:after{content:; display:block;clear:both;}
9 R. n# U& V8 x3 X! a/*# @' ]! ^8 g h. f# t: S/ E$ A0 G0 A
清浮动
8 t! t. h7 m3 E) E: R x& b1.给父级也加浮动' h6 t7 b9 L6 @7 z
2.给父级加display:inline-block
$ `8 T- I5 b. o: p$ h( J3.在浮动元素下加<div class=clear></div>
p9 Y: c8 i+ f! J7 @+ v" _.clear{ height:0px;font-size:0;clear:both;}5 C0 f% j" |6 L
4.在浮动元素下加<br clear=all/>
3 h$ I' f7 g; e& ?) C5. 给浮动元素的父级加{zoom:1;}! a# D9 y: R" `$ Y
:after{content:; display:block;clear:both;}
" Y% g( p; C& w**在ie6,7下浮动元素的父级有宽度就不用清浮动% t* T7 \ [" w3 A3 ~
haslayout 根据元素内容的大小 或者父级的父级的大小来重新的计算元素的宽高
4 E( {1 i! t6 x+ f1 P0 O( Ndisplay: inline-block
7 a9 d/ ?3 Q s6 Y2 K8 Bheight: (任何值除了auto)
$ u8 u* s; ?: b% }( S) zfloat: (left 或 right)( \8 Z) z( ^/ t4 t4 Q
width: (任何值除了auto)
* N; u& D' t7 d: Rzoom: (除 normal 外任意值) 5 H, U2 M/ ]* S3 F
*/: ]0 W0 |: K9 u) G
</style>
# ^& s: c9 d0 b4 Z h! n' _5 a</head>
( ~( @+ O9 d. X9 }. O<body>* y- O( h' W2 V% ^3 i1 f, F# C0 |
<div class=box clear>+ u& ] ? w% n
<div class=div></div>
# ?4 D" Q2 i% \5 u% B9 V8 d X7 J</div>
6 S; T y5 n8 I9 K# P4 j! N9 X5 w3 C</body>
% c0 ~ o& L! T) a" [. V</html>5 b f7 P M: A& t- D- L' y
6.给浮动元素父级加overflow:auto;
, v) u2 @3 G/ T: n代码如下:
( c$ Q7 o$ `/ Z6 c9 h% K4 A" b<!doctype html>3 X* X3 b: G4 G' k
<html>3 h0 O/ W4 ^2 e
<head>. l+ C# }! G/ \" S
<meta http-equiv=content-type content=text/html; charset=utf-8>; C' Q! n, Y2 b) n5 a2 r3 ]) M8 V
<title>无标题文档</title>
; {+ I( y* K6 i! Z, H8 g9 D<style>
! l- Q: F9 X4 g1 |.box{ width:300px;border:1px solid #000;overflow:auto;}
, _8 X) ?+ e8 d9 Y.div1{ width:260px;height:400px;background:red;float:left;}- ^) T2 ^' B3 ^. q
</style>8 e2 n7 O: N a1 V0 j3 Y, V
</head>
, ~, `$ @0 M! d3 O8 Y<body>! e) o4 v8 L" x
<div class=box>, U7 M1 U+ s5 [# A: @# P
<div class=div1></div>) G1 a6 R4 Z3 z
</div>- M0 H( x. X3 W
</body>: w `# `5 L, `6 M
</html>
5 T8 o# {7 _% g# S; t* k( _, r8 x3 L; @. Y
更多网页制作信息请查看: 网页制作 |
|