twin temporada serie peaks explicacion criticas critica html css css3 css-selectors

html - temporada - Seleccionar dobles usando nth-child() en CSS3



twin peaks serie critica (5)

Creo que este CSS debería tener lo que pretendes hacer.

ul li:nth-child(4n+1), ul li:nth-child(4n+2) { background: #ccc; } ul li:nth-child(4n+3), ul li:nth-child(4n){ background: #ddd; }

Este JSFiddle lo muestra en acción. http://jsfiddle.net/u2W84/

Supongamos que tengo la siguiente estructura para una lista:

<ul> <li></li><li></li> <li></li><li></li> </ul>

y cada <li> tiene un ancho del 50%, así que quiero que cada dos tengan el mismo color de fondo como este:

<ul> <li style="background:#CCC;"></li><li style="background:#CCC;"></li> <li style="background:#DDD;"></li><li style="background:#DDD;"></li> <li style="background:#CCC;"></li><li style="background:#CCC;"></li> <li style="background:#DDD;"></li><li style="background:#DDD;"></li> </ul>

¿Puedo hacer esto usando el selector de CSS ''nth-child ()'' para minimizar el código ?


Quizás todas las demás respuestas funcionen, pero esto es lo que haría:

ul li { background: red; } ul li:nth-child(odd), ul li:nth-child(odd) + li { background: green; }

Editar: no lo siento, eso no funcionó: P Dame un segundo.


Sí, puedes hacerlo solo con CSS (3). Aquí hay un ejemplo jsFiddle .

li { width:100%; } li:nth-child(4n) { background:#999; } li:nth-child(4n-1) { background:#999; } li:nth-child(4n-2) { background:#ccc; } li:nth-child(4n-3) { background:#ccc; }

1.


li{ /* All LIs*/ } li:nth-child(4n+1), li:nth-child(4n+2) { /* Li 1, 2, 5, 6, 9, 10 */ }


ul li:nth-child(4n+1), ul li:nth-child(4n+2) { background: #CCC; } ul li:nth-child(4n+3), ul li:nth-child(4n+4) { background: #DDD; }

Esto le dará cada 4º elemento comenzando con 1º y 2º color #CCC y cada 4º elemento empezando con 3º y 4º como #DDD

jsfiddle aquí: http://jsfiddle.net/mU2tn/1/