Поскольку я пытался найти решение с поддержкой старых браузеров, у меня есть то, что может быть слишком упрощенным решением. Использование стилей отображения таблиц и идентификаторов / классов:
<ul>
<li id="listCaption">My List</li>
<li>first item</li>
<li>second item</li>
<li>third item</li>
</ul>
Затем примените display: table-row;
стиль к элементу в CSS:
li#listCaption {
display: table-row;
font-size: larger;
text-decoration: underline; }
Это работает намного лучше, если вы используете список описаний, что я делал, когда у меня возник тот же вопрос. В этом случае вы можете использовать <div>
в HTML и display: table-caption;
CSS, поскольку элементы div поддерживаются в списке dl:
<dl>
<div id="caption">Table Caption</div>
<dt>term</dt>
<dd>definition</dd>
</dl>
В CSS вы можете применять к подписи различные стили:
#caption {
display: table-caption;
font-family: Arial, Helvetica, sans-serif;
font-size: 20px;
background: transparent;
caption-side: top;
text-align: center; }
Замечу, что table-caption
вul/ol
он рассматривается как элемент блока, и текст будет выровнен по вертикали, что вам, вероятно, не нужно.
Я тестировал это как в Firefox, так и в Chrome.