今天在作布局的时候,遇到个纳闷的问题。浏览器
我想将一个div块水平分为宽50%的两部分,分别为两个连接按钮,HTML代码以下:布局
<div id="wrap"> <a href="" class="link1">link1</a> <a href="" class="link2">link2</a> </div>
天然而然想到了用display:inline-block来触发layout又不换行;spa
a{ display:inline-block; width:50%;
... }
可是结果却令我大跌眼镜:code
我给div设了width=400,每一个a的width为50%,但并无像预期的,水平排列,在Chrome下审查元素,看到的布局结果是:width=200, no padding, no border, no margin, no no no~~~blog
纳闷的Demo→: http://jsbin.com/bemojoki/4/editget
·it
后来查了一下资料,原来是这个inline-block,我一直没正真了解过~class
回滚到最顶看HTML代码,两个a标签没有写在同一行,换行符、空格符、制表符等,在浏览器中会被折合为一个空白符,而inline-block具备inline的特性,默认状况下有空隙,这个空隙就是空白符。所谓的符号就是字符,因此大小会受font-size影响,所以,上面这个纳闷的问题,能够用{font-size:0;}来解决了。bem
具体Demo→:http://jsbin.com/bemojoki/10/editim
============================华丽丽的分隔线============================
inline-block前世此生,传送门:http://ued.taobao.org/blog/2012/08/inline-block/