【发布时间】:2013-07-19 00:04:24
【问题描述】:
我的页面中定义了一些 div
<div class="alternating">random text</div>
<div class="alternating">random text</div>
<div class="alternating">random text</div>
<div class="alternating">random text</div>
<div class="alternating">random text</div>
我添加了一个 css 属性
.alternating:nth-child(even){
background: #FF0000;
}
在加载页面时,一切看起来都很好,偶数行都是彩色的。 但是当我向这个 div 的父级添加一个新的 div(使用 Knockout 和 jquery)时,新添加的行没有显示正确的颜色。 这意味着如果我的最后一行是奇数(没有颜色),新添加的 div 也会出现没有颜色。 或者,如果最后一个 div 是偶数(带有颜色),则新添加的 div 也带有颜色。
但之后又恢复正常了。 我的问题只是添加了第一个 div。
有什么想法吗?
【问题讨论】:
-
你能贴出你用来动态添加div的代码吗?
-
您使用的是什么浏览器?是否所有浏览器都会出现相同的错误?
-
如果您需要,这是第一步:jsfiddle.net/mXMDD。这是您的代码和基本想法,似乎可以正常工作。告诉我们原因是什么(可能是浏览器问题?)。
-
如果加载页面后添加div,这种情况下添加div后需要重新加载css文件,
-
据我所知,它工作正常。 jsfiddle.net/6tPwU ...也许您可以使用以下代码重置编号:
$('.alertnating').removeClass('alternating').addClass('alternating');
标签: css css-selectors