隨着元素的靜態數量很容易 - 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');
});
}
完整的示例here
您通常需要知道你有多少項目在你的菜單來完成這件事。如果你有5個項目,你把每個項目設置爲20%的寬度等等。 –