No. Bueno, en realidad no. Hay un par de selectores que pueden acercarte un poco, pero probablemente no funcionarán en tu ejemplo y no tienen la mejor compatibilidad del navegador.
:only-child
Este :only-child
es uno de los pocos selectores de conteo verdadero en el sentido de que solo se aplica cuando hay un elemento secundario del elemento primario del elemento. Usando su ejemplo idealizado, actúa como children(1)
probablemente lo haría.
:nth-child
El :nth-child
selector podría llevarte a donde quieres ir dependiendo de lo que realmente estés buscando hacer. Si desea diseñar todos los elementos si hay 8 niños, no tiene suerte. Sin embargo, si desea aplicar estilos a los elementos 8 y posteriores, intente esto:
p:nth-child( n + 8 ){
/* add styles to make it pretty */
}
Desafortunadamente, estas probablemente no son las soluciones que estás buscando. Al final, es probable que necesites usar un poco de magia de Javascript para aplicar los estilos basados en el recuento; incluso si usaras uno de estos, deberías analizar detenidamente la compatibilidad del navegador antes de utilizar un sistema puro. Solución CSS
W3 CSS3 Spec en pseudo-clases
EDITAR Leí su pregunta de manera un poco diferente: hay otras dos formas de diseñar a los padres , no a los hijos. Permítanme lanzar algunos otros selectores en su dirección:
:empty
y :not
Esto diseña elementos que no tienen hijos. No es tan útil por sí solo, pero cuando se combina con el :not
selector, puede diseñar solo los elementos que tienen elementos secundarios:
div:not(:empty) {
/* We know it has stuff in it! */
}
No puede contar cuántos niños están disponibles con CSS puro aquí, pero es otro selector interesante que le permite hacer cosas interesantes.