私のページには、ULがいくつでも入力されている可能性があり、それぞれに最大3つのLIがあります。LIがいくつあるかに応じて、左マージンを処理するようにこの条件ステートメントを設定しました。正しい結果をログに記録しますが、結果が2または3であっても、常に結果が1であるかのようにcssを適用します...私はこれにまったく慣れていないので、経験豊富な人には明らかな何かが欠けている可能性があります。各LIの幅と高さは40ピクセルで、背景画像があります。テキストはインデントされているため、表示されません。
$("ul.links").each(function(){
var num = $(this).children().length;
if (num == 1) {
$('ul.links li:first-child').css('margin-left','125px');
}
else if (num == 2) {
$('ul.links li:first-child').css('margin-left','96px');
}
else {
$('ul.links li:first-child').css('margin-left','71px');
}
//console.log(num);
});
<ul class="links">
<li><a href="#">First</a></li>
<li><a href="#">Second</a></li>
<li><a href="#">Third</a></li>
</ul>