鉴于此HTML和CSS:
span {
display:inline-block;
width:100px;
background-color:palevioletred;
}Run Code Online (Sandbox Code Playgroud)
<p>
<span> Foo </span>
<span> Bar </span>
</p>Run Code Online (Sandbox Code Playgroud)
结果,SPAN元件之间将存在4像素宽的空间.
演示: http ://jsfiddle.net/dGHFV/
我理解为什么会发生这种情况,而且我也知道我可以通过删除HTML源代码中SPAN元素之间的空白来摆脱那个空间,如下所示:
<p>
<span> Foo </span><span> Bar </span>
</p>
Run Code Online (Sandbox Code Playgroud)
但是,我希望CSS解决方案不要求HTML源代码被篡改.
我知道如何用JavaScript解决这个问题 - 通过从容器元素(段落)中删除文本节点,如下所示:
// jQuery
$('p').contents().filter(function() { return this.nodeType === 3; }).remove();
Run Code Online (Sandbox Code Playgroud)
演示: http ://jsfiddle.net/dGHFV/1/
但是这个问题可以单独用CSS解决吗?
我有一个(水平)居中的外部div包含两个未知宽度的元素:
<div style='width:800px; margin:0 auto'>
<div style='float:left'>...</div>
<div style='float:right'>...</div>
</div>
Run Code Online (Sandbox Code Playgroud)
默认情况下,两个浮动都是顶部对齐的,并且具有不同/未知和不同的高度.有没有办法让它们垂直居中?
我最终做了外部div
display: table
Run Code Online (Sandbox Code Playgroud)
和内在的div
display: table-cell;
vertical-align: middle;
text-align: left/right;
Run Code Online (Sandbox Code Playgroud)
但我很好奇是否有办法用花车来做这件事.
我知道这是一个常见的问题,我已经问了类似的问题.但这次我找不到解决办法.我试图垂直居中一个文本,在DIV中可以有不同的高度可以有不同的高度.我试图用CSS解决这个问题,而不是触及HTML.
<div id="test">
<div id="sumup">
<h1 class="titre">Title</h1>
<div id="date">hello guys</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我的目标是让文本无论大小都垂直和水平居中.