文本对齐:证明不能处理动态创建的内容

时间:2014-01-28 17:32:17

标签: javascript jquery html css

我正在尝试使用text-align:justify和display:inline-block,如this post中所述,为一些动态创建的元素设置样式。在我的头撞墙检查CSS冲突之后,我终于意识到在创建内容之后没有重新评估对齐。我想知道是否有人知道这方面的解决方法。有没有办法强制在动态创建的元素上重新评估样式?

编辑 - HTML:

<div id="container" class="flush">

</div>

<div class="flush">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

CSS:

.flush{
text-align: justify;
width: 500px;
height: 250px;
background: #00f;
}

.flush div{
display: inline-block;
width: 101px;
height: 100px;
background: #f00;
}

JS:

for(var i = 0; i<5; i++){  
  $('#container').append("<div></div>");
}

这是一个jsfiddle example来说明。注意硬编码元素是如何对齐的,而动态创建的元素则不是。

1 个答案:

答案 0 :(得分:10)

在动态创建的space;)

之后添加div
$('#container').append("<div></div> ");

有phun!

修改

这是更好的

$('#container').append("<div></div>\n\r");

http://jsfiddle.net/ergec/4pswV/