如果元素的数量是静态的,那么很容易-http://jsfiddle.net/X56cJ/
然而,如果你想要在文本之间具有均匀的间距,而不是元素本身,就会变得棘手。同样,如果元素的数量不变,可以使用CSS类和静态宽度来实现。否则,就需要使用JavaScript。
编辑:以下是使用JavaScript获取元素之间相同间距的方法。
HTML:
<ul class="menu">
<li>About Us</li>
<li>Our Products</li>
<li>FAQs</li>
<li>Contact</li>
<li>Login</li>
</ul>
JS:
function alignMenuItems(){
var totEltWidth = 0;
var menuWidth = $('ul.menu')[0].offsetWidth;
var availableWidth = 0;
var space = 0;
var elts = $('.menu li');
elts.each(function(inx, elt) {
// reset paddding to 0 to get correct offsetwidth
$(elt).css('padding-left', '0px');
$(elt).css('padding-right', '0px');
totEltWidth += elt.offsetWidth;
});
availableWidth = menuWidth - totEltWidth;
space = availableWidth/(elts.length);
elts.each(function(inx, elt) {
$(elt).css('padding-left', (space/2) + 'px');
$(elt).css('padding-right', (space/2) + 'px');
});
}
完整的示例在这里
<li><a href="#">fivesixseveneightnineten</li>
添加到您的列表中,您就会明白我的意思。 - bronson如果您知道将要有多少元素,您可以指定每个元素的宽度百分比。否则,没有表格或JavaScript的帮助是不可能实现的。