float:css
1.会致使高度塌陷浏览器
<style type="text/css"> li{ float:left; height:200px; width:200px; background-color: red; margin:10px; font-size: 50px; text-align: center; line-height: 200px; list-style: none } ul{ border:5px solid green; width:100%; } <style> <ul> <li>1</li> <li>2</li> </ul>
2.若float元素高度不一,会造成锯齿状spa
<style type="text/css"> div{ float:left; height:200px; width:200px; background-color: red; margin:10px; font-size: 50px; text-align: center; line-height: 200px; } div.q1{ height:500px; } </style> <div>1</div> <div class="q1">2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div>
2.display:inline-blockcode
注:每一行全部的inline元素与inline-block元素 会造成一个inline box ,该inline box的高度由inline 或inline-block元素的高度来决定,因此不会出现锯齿状blog
问题:换行符与空格间隙问题ci
(1)空格符的本质就是透明的字符,全部能够经过font-size:0 来去除空格class
(2)letter-spacing 属性float
总结:im
block
水平的元素inline-block
化后,IE6/7没有换行符间隙问题,其余浏览器均有;
inline
水平的元素inline-block
后,全部主流浏览器都有换行符/空格间隙问题; font-size:0
,去除换行符间隙,在IE6/7下残留1
像素间隙,其余浏览器都完美去除; letter-spacing
负值能够去除全部浏览器的换行符间隙。d3