Я делаю горизонтальную панель навигации на основе ul, но хочу, чтобы в каждом элементе было два уровня заголовков, примерно так:
Nav item1 Nav item2 Nav item3
Nav item1 subtitle Nav item2 subtitle Nav item3 subtitle
Подзаголовок должен быть в стиле, отличном от основного элемента навигации. Сначала я сделал это (наивно?), используя p, вложенный в li, но W3C сказал, что я не могу вложить p внутри li.
По сути, я пытаюсь избежать br, главным образом потому, что это неправильная семантика, не так ли? Я иду об этом неправильно?
РЕДАКТИРОВАТЬ: я должен был добавить, я хочу, чтобы элемент навигации и его подзаголовок находились в одном и том же теге привязки, потому что они представляют собой одну ссылку (и я хочу, чтобы: наведение работало). Я думаю, это исключает использование нескольких тегов заголовков в li.
РЕДАКТИРОВАТЬ 2: ответы были полезны, спасибо. Интересно отметить: хотя было сказано, что block span == div, это не так, как это видит валидатор W3C. Вы всегда можете иметь диапазон, вложенный в якорь, даже если диапазон display:block, но вы не можете, например. иметь display:inline h1 внутри привязки, потому что валидатор не проверяет файлы CSS и HTML вместе.