Supongamos que en una página debemos desarrollar un tema con varias secciones que incluyen distintas sub-secciones compuestas por párrafos. Para numerar las secciones y sub-secciones deberíamos escribir el número de orden antes de cada título y subtítulo; si se alterara el orden de las secciones deberíamos nuevamente modificar esos números para que coincidieran con la nueva organización. Demasiado complicado.
Es aquí donde de advierte el beneficio del contenido generado por las CSS: podemos hacer que cada antes de cada título y subtítulo se inserte el número de orden, de modo que si la composición sufre algún cambio no deberemos preocuparnos por numerar nuevamente el trabajo "a mano". A continuación del siguiente ejemplo, están las reglas de estilo y su explicación.
Texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto.
Texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto.
Este tema no tiene un título (en realidad lo único que contiene es un espacio en blanco) pero sí aparece el texto generado por la hoja de estilo (Tema X.)
Texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto.
Texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto.
Texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto.
Texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto, texto.
H1:before { content: "Tema " counter(sección) ". ";
counter-increment: sección;
counter-reset: sub-sección; }
H2:before { content: counter(sección) "." counter(sub-sección) " ";
counter-increment: sub-sección; }
Explicación:
H1:before { content: "Tema " counter(sección) ". "
counter-increment: sección
<H1>
el número del contador suma 1).counter-reset: sub-sección
<H2>
(que llamamos
sub-sección), así cada vez que hay un subtítulo
(<H2>
) comienza desde 1.H2:before { content: counter(sección) "." counter(sub-sección)
" "
<H2>
se inserta el contador sección,
luego un punto, luego el contador sub-sección y luego un espacio
en blanco. counter-increment: sub-sección
counter-increment:
sub-sección 2
y la numeración seguiría el orden:
1, 1.2, 1.4 ... 2, 2.2, 2.4 ...