li:添加a后,nth-child(odd)不起作用

时间:2013-10-14 19:20:34

标签: jquery css

我确实有一个项目列表,可以在jQuery的帮助下获得替代颜色:

$('ul.follows li:nth-child(odd)').addClass('alternate');

在我在列表项之前添加a标记之前,它工作正常。所以...现在我有:

    <ul class="follows">
            <a href="#">
            <li class="me">
                <img src="#">
                <h3>#</h3>
                <p>#</p>
            </li>
            </a>
...</ul>

知道为什么它不再起作用了吗?

我可以在<a>内找到<li>,但后来我不确定整个项目是如何点击的......

2 个答案:

答案 0 :(得分:3)

修复列表标记(UL的唯一有效子项是LI),然后执行以下操作:

ul.follows li {padding: 0;}
ul.follows li a {display: block; height: 100%;}

你的jQuery现在应该可以工作,你的LIs可以在整个宽度上点击。

http://jsfiddle.net/isherwood/5ctc3/

答案 1 :(得分:0)

由于添加了新标记,您可能需要更改选择器。你可能不得不做这样的事情

$('ul.follows a li:nth-child(odd)').addClass('alternate');

这样你的jquery可以遍历你的html标签。我希望有所帮助!

-Frank