原因:
a元素或者div元素下有一个匿名文本,这个文本外有一个匿名行级盒子,它有的默认vertical-align是baseline的,由于设置了line-height的影响,使它有个line-height,从而使其有了高度,因为baseline对齐的原因,这个匿名盒子就会下沉,往下撑开一些距离,所以把div或a元素撑高了。
解决办法:
- 消除掉匿名盒子的高度,设置line-height:0或font-size:0
- 给两者设置vertical-align:top,让其top对齐,而不是baseline对齐
- 给img、iframe元素以display:block,让它和匿名行级盒子不在一个布局上下文中,也就不存在行级盒