请参阅以下 jsFiddle:http: //jsfiddle.net/Leng/kQvNH/
谁能解释为什么每行水平点周围似乎都有大量的填充(上面大约 15 像素,下面大约 4 像素)?图像只有 2px 高。填充从哪里来?
请注意:
对我来说,只有在我开始使用 HTML5 标题的文档时才会出现这种围绕图像的神秘填充:
<!DOCTYPE html>
<html>
当我使用 -任何其他- 标题时,图像正常显示(无填充),例如 HTML4 或网页的此 XHTML 标题:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
所以这似乎是 HTML5 的不一致。我想切换到标准的 HTML5 标题,但是这个小小的烦恼阻止了我这样做。
感谢您的任何指导。
解决方案:
这是带有解决方案的 jsFiddle:http: //jsfiddle.net/Leng/Sn2PC/
img
{
display:block;
margin:0 auto;
}
这是基于下面克里斯的回答。
请注意,设置 font-size:0 或 line-height:0不是解决方案,因为这(显然)会混淆字体大小和行高。
同样,将显示设置为阻止并建立自动边距对于在 HTML4 或 XHTML 中完成正常、居中、未填充的图像不是必需的。
HTML5 已经创建了这个“功能”,其中图像是内联的,并且将根据行高或字体大小进行填充。