我试图显示三个 div 元素从容器 div 元素的一个边缘均匀分布到另一边缘。
这是HTML代码。
<body>
<div id="container" width="50%">
<div>foo</div>
<div>bar</div>
<div>baz</div>
<div class="stretch"></div>
</div>
</body>
这是CSS代码。
#container {
margin: 10%;
background: lightblue;
text-align: justify;
}
#container div {
display: inline-block;
width: 30%;
background: gray;
}
#container div.stretch {
width: 100%;
height: 0;
}
这可以正常工作,可以在这里看到:http: //jsfiddle.net/zVf4j/
但是,当我尝试使用以下 JavaScript 更新容器 div 时,子 div 元素不再从容器 div 元素的边缘散布到边缘。
var containerDiv = document.getElementById('container')
containerDiv.innerHTML =
'<div>fox</div>' +
'<div>bay</div>' +
'<div>baz</div>' +
'<div class="stretch"></div>'
在这种情况下,CSS 中的text-align: justify;
属性似乎无效。这个问题可以在这里看到:http: //jsfiddle.net/b5gBM/
我有两个问题。
- 为什么使用 JavaScript 更新子 div 元素的位置会发生变化?
- 我们如何解决这个问题,以便子 div 元素即使在使用 JavaScript 更新后也能从容器 div 的一个边缘均匀分布到另一边缘?