块元素和块元素

这两个divs之间的空间是什么? 我甚至删除了html中的空格。

<div id="asd"></div><div id="psd"></div>

http://jsfiddle.net/9thpuvwa/

现在,如果第一个div(asd)中有一些文本,那么空间就不存在了; 什么?

<div id="asd">a</div><div id="psd"></div>

http://jsfiddle.net/kadb1d3s/

(我试图理解我的上一个问题)

CSS

#asd {
  background-color: blue;
  display: inline-block;
  width: 200px;
  height: 200px;
}

#psd {
  background-color: red;
  width: 200px;   
  height: 200px;
}

问题:空间来自哪里?


这似乎是由垂直对齐造成的。 在设置为inline-block的情况下,默认情况下,垂直对齐设置为baseline ,稍高一点(可能会考虑字符,比如'y'和'g')。

top vertical-align似乎可以修复它:

#asd {
  ...
  vertical-align: top;
}

JSFiddle演示


空间来自哪里?

inline-block元素对齐到“行”的baseline ,它将显示在上面。

向它添加vertical-align:bottom (或text-bottom ,或middletop ,...),空间将消失:http://jsfiddle.net/9thpuvwa/2/

链接地址: http://www.djcxy.com/p/15793.html

上一篇: block element and a block element

下一篇: Remove white space between div blocks