Como estaba tratando de encontrar una solución con soporte para navegadores más antiguos, tengo lo que podría ser una solución demasiado simplificada. Usando estilos de visualización de tabla e ID / clases:
<ul>
<li id="listCaption">My List</li>
<li>first item</li>
<li>second item</li>
<li>third item</li>
</ul>
Luego aplique el display: table-row;
estilo al elemento en CSS:
li#listCaption {
display: table-row;
font-size: larger;
text-decoration: underline; }
Esto funciona mucho mejor si está utilizando una lista de descripción, que es lo que estaba haciendo cuando tuve la misma pregunta. En ese caso, puede usar <div>
en HTML y display: table-caption;
CSS, ya que los elementos div son compatibles con la lista dl:
<dl>
<div id="caption">Table Caption</div>
<dt>term</dt>
<dd>definition</dd>
</dl>
En CSS, puede aplicar varios estilos a la leyenda:
#caption {
display: table-caption;
font-family: Arial, Helvetica, sans-serif;
font-size: 20px;
background: transparent;
caption-side: top;
text-align: center; }
Debo señalar que table-caption
no funciona tan bien enul/ol
ya que se trata como un elemento de bloque y el texto se alineará verticalmente, lo que probablemente no desee.
Probé esto tanto en Firefox como en Chrome.