Tumblr经常在blockquote内部的blockquote中进行blockquote,依此类推......我想让其他一个不同。 CSS nth-child没有工作,所以我使用jQuery [我不熟悉并在需要时使用stackoverflow]并使用它:
$('.post blockquote').each(function(index, element){
if(index % 2 == 0) { $(element).addClass('even'); }
if(index != 0) { $(element).addClass('inside'); }
});
并且它可以工作,但它不能为一个帖子再做一次,然后重新开始,但只是继续下一个,依此类推。所以我试着把它包起来:
$(".post").each(function() {
$('blockquote').each(function(index, element){
if(index % 2 == 0) { $(element).addClass('even'); }
if(index != 0) { $(element).addClass('inside'); }
});
});
但它只会影响发布页面上的所有blockquote帖子。如果我再次在blockquote之前添加.post,它会像我写的第一个案例一样。
我做错了什么,你可以帮我吗?
答案 0 :(得分:2)
潜在的纯粹css解决方案是使用"直接孩子" >
选择器:为.blockquote > .blockquote
和.blockquote > .blockquote > .blockquote
等设置样式
jsfiddle
[编辑:鉴于你希望它们交替出现,你可以do this - 实际上不可能无限地嵌套块引用,所以这不需要额外的输入:p。但我赞成了jquery的答案(@mohammadreza),因为它在技术上不那么糟糕了。
答案 1 :(得分:0)
你的代码问题在这一行循环:
if(index != 0) { $(element).addClass('inside'); }
内部类添加到所有blockquote,它的索引不同于零......
你可以看到结果here