我在这里有这个:
<ul class="bwp-rc-ulist">
<li class="recent-comment">Item 1</li>
<li class="recent-comment">Item 2</li>
<li class="recent-comment">Item 3</li>
<li class="recent-comment">Item 4</li>
<li class="recent-comment">Item 5</li>
<li class="recent-comment">Item 6</li>
<li class="recent-comment">Item 7</li>
<li class="recent-comment">Item 8</li>
<li class="recent-comment">Item 9</li>
<li class="recent-comment">Item 10</li>
</ul>
我想添加以下CSS样式:
li.list1, li.list6 { background-color: red; }
li.list2, li.list7 { background-color: blue; }
li.list3, li.list8 { background-color: black; }
li.list4, li.list9 { background-color: yellow; }
li.list5, li.list10 { background-color: gray; }
不幸的是,我不能这样做因为UL&amp; LI是由wordpress插件(Better Wordpress Comment&amp; Except Plugin)动态创建的。
我已经阅读了一些n-child thingy,但它并没有解决我的问题。也许如果有人能告诉我什么是正确的脚本?
我也在寻找适用于IE7-9,chrome和ff的脚本。
非常感谢。
答案 0 :(得分:3)
CSS解决方案
ul.bwp-rc-ulist li:nth-child(1),
ul.bwp-rc-ulist li:nth-child(6) {
background-color: red;
}
ul.bwp-rc-ulist li:nth-child(2),
ul.bwp-rc-ulist li:nth-child(7) {
background-color: blue;
}
ul.bwp-rc-ulist li:nth-child(3),
ul.bwp-rc-ulist li:nth-child(8) {
background-color: black;
}
ul.bwp-rc-ulist li:nth-child(4),
ul.bwp-rc-ulist li:nth-child(9) {
background-color: yellow;
}
ul.bwp-rc-ulist li:nth-child(5),
ul.bwp-rc-ulist li:nth-child(10) {
background-color: gray;
}
或者如果你更喜欢它更紧凑:
ul.bwp-rc-ulist li:nth-child(5n+1) {
background-color: red;
}
ul.bwp-rc-ulist li:nth-child(5n+2) {
background-color: blue;
}
ul.bwp-rc-ulist li:nth-child(5n+3) {
background-color: black;
}
ul.bwp-rc-ulist li:nth-child(5n+4) {
background-color: yellow;
}
ul.bwp-rc-ulist li:nth-child(5n+5) {
background-color: gray;
}
jQuery解决方案(使用您的CSS)
$('ul.bwp-rc-ulist li.recent-comment').each(function(index) {
$(this).addClass("list" + (index + 1));
});
答案 1 :(得分:2)
HTML:
<ul id="ulEle" class="bwp-rc-ulist">
<li class="recent-comment">Item 1</li>
<li class="recent-comment">Item 2</li>
...
</ul>
OR:
<div id="ulEle">
<ul class="bwp-rc-ulist">
<li class="recent-comment">Item 1</li>
<li class="recent-comment">Item 2</li>
...
</ul>
</div>
JS:
<script type="text/javascript">
var ulGet=document.getElementById("ulEle");
var liList=ulGet.getElementsByTagName("li");
for(var i=0;i<liList.length;i++)
{
liList[i].style.className="list"+(parseInt(i)+1);
}
</script>
答案 2 :(得分:0)
试试这个css
li:nth-child(6n+1) {
color: red;
}
li:nth-child(6n+2) {
color: blue;
}
等等