css3限于类的types
有什么办法来限制css3的nth-of-type
到一个类? 我有不同类别的dynamic数量的section
元素指定他们的布局需求。 我想要抓住每一个第三个.module
,但是看起来nth-of-type
查找类的元素types,然后计算types。 相反,我想只限于.module
s。
谢谢!
JSFiddle来演示: http : //jsfiddle.net/danielredwood/e2BAq/1/
HTML:
<section class="featured video"> <h1>VIDEO</h1> </section> <section class="featured module"> <h1>NOT A VIDEO</h1> </section> <section class="featured module"> <h1>NOT A VIDEO</h1> </section> <section class="featured module"> <h1>NOT A VIDEO (3)</h1> </section> <section class="featured module"> <h1>NOT A VIDEO</h1> </section> <section class="featured module"> <h1>NOT A VIDEO</h1> </section> <section class="featured module"> <h1>NOT A VIDEO (6)</h1> </section>
CSS:
.featured { width:31%; margin:0 0 20px 0; padding:0 3.5% 2em 0; float:left; background:#ccc; } .featured.module:nth-of-type(3n+3) { padding-right:0; background:red; } .featured.video { width:auto; padding:0 0 2em 0; float:none; }
不幸的是,没有办法(至less我没有知道)select一个类的nth-of-class
类,因为nth-of-class
不存在。 您可能需要手动为每个第三个.module
添加一个新类。
看起来你真正想要的是css4:nth-matchselect器 ,但是它在大多数浏览器中并没有得到真正的支持,所以目前唯一的方法就是使用javascript
$(".featured.module").filter(function(index, element){ return index % 3 == 2; }).addClass("third");