2

我正在使用 text-align:justify 来均匀地隔开内联块元素。我正在使用 jQuery 交换某些元素,以便它们更适合(例如更有效地填充行)。然而,浏览器不再正确地证明交换的元素是正确的。有没有办法让浏览器重新调整元素来克服这个问题?

编辑 这是一个显示问题的jsfiddle:http: //jsfiddle.net/sprintstar/HKDd9/3/

4

2 回答 2

3

问题在于行内块元素之间缺少空格。你错过的是文本节点:

$(function() {
    var eq3 = $('.container a:eq(3)');
    var eq4 = $('.container a:eq(4)');
    eq4.before(eq3).before(" ");
});​

http://jsfiddle.net/archatas/HKDd9/4/

于 2012-06-21T12:17:40.323 回答
0

尽管我不确定您的代码未按预期工作的原因,但我有一个可能的解决方案。也许有人可以对这个问题有所了解。

首先eq4.before(eq3);意味着你把它放回你选择它的地方。我相信你的意思是eq4.insertBefore(eq3);

我尝试添加一个新元素并且效果很好

 $('<a href="#" class="sq-1"><img src="http://placehold.it/64x32" /></a>').insertBefore(eq3);

编辑:但克隆相同的元素不会产生相同的结果。

eq4.clone().insertBefore(eq3);
eq4.remove();
于 2012-06-21T12:04:30.460 回答