为什么此代码中的图像下方有空格?

byr*_*gur 3 html css

我有以下代码,它允许红色从一个元素显示.为什么是这样.我原以为a元素只会扩展到内容的大小,但它看起来比它大一点.请参阅此处的codepen http://codepen.io/anon/pen/soqEz.

HTML

<a href="#"><img src="http://placehold.it/150x150" /></a>
Run Code Online (Sandbox Code Playgroud)

CSS

a{
  background: red;
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:0;
}
img {
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:0;
}
Run Code Online (Sandbox Code Playgroud)

编辑:我看到下面的答案......但任何人都可以解释为什么空间在那里(我的意思是它是块级元素......首先是它的目的是什么)...相反试图摆脱它.谢谢

Dan*_*ses 7

img元素是inline默认的. inline元素充当文本,默认为a vertical-align: baseline.这意味着图像的底部与文本的底部对齐.请注意,小写的p或g位于垂直文本对齐的底部之下.您可以通过添加vertical-align: bottomOR 来修复它display: block.