Eu já vi muito, “Como aplico uma classe de foo a cada três postagens no blog?”
E muitas pessoas respondendo, “Basta usar n-ésimo filho”.
Bem, o enésimo filho não funciona no IE8 e versões anteriores. Essa é uma grande quantidade de pessoas.
Portanto, use o nth-child, mas também use a iteração. Aqui está um exemplo rápido de como fazer isso no Loop do WordPress:
<?
$i = 1;
if ( have_posts() ) : while ( have_posts() ) : the_post();
$i++;
?>
<article<? if($i % 3 == 0) { echo ' class="last"'; } ?>>
<header><? the_title(); ?></header>
<? the_excerpt(); ?>
</article>
<? endwhile; else: ?>
<p><? _e('Sorry, no posts matched your criteria.'); ?></p>
<? endif; ?>
Demolir
- Declaramos $ i = 1
- Então dizemos: “Comece a buscar postagens”
- Assim que você tiver o primeiro post carregado, adicione um a qualquer $ i
- Em seguida, entramos em nossa marcação real e dizemos: “Se $ i é divisível por 3, então …”
Em coisas como Django, isso é trivial com a tag de template divisibleby, mas usar este conceito é cross-browser e cross-language. Aproveitar.