Список или более длинный фрагмент кода внутри абзаца
При написании алгоритмов часто очень удобно писать некоторый (псевдо) код внутри абзаца, илидаже в середине предложения, Для визуальной поддержки структуры более сложного предложения также пригодятся списки.
Очевидно, что одно предложение не должно быть разбито на разные параграфы. Но в нашем случае это должно быть связано с правилами вложения HTML.
Параграфp
элемент, которыйне может содержать элементы уровня блока, К сожалению для нашего случая,pre
а такжесписки находятсяна уровне блоков.
Если я не подчиняюсь спецификации и включаюpre
или жеol
/ul
/dl
вp
,p
автоматически закрывается перед стартом тега элемента любым парсером, который я знаю. (Это связано сSGMLOMITTAG
характерная черта настройки наp
.) Может быть, это и обратная совместимость являются причиной, по которой проектное решение не разрешаетсяpre
и списки внутриp
.
Есть ли способ, как включить списки и более длинные фрагменты кода в абзацы?
Я мог быпереформулировать мои предложения и абзацы не нуждаются в фрагментах и списках, но требуют много размышлений и внимания и могут затруднить чтение и понимание моего текста. Этоне решение для меня.
Я мог бы использоватьcode
с участиемwhitespace: pre
а такжеdisplay: block
для длинных фрагментов кода иcode
с участиемwhitespace: pre-wrap
для более коротких. Это семантически правильно?
Я мог бы представить списки внутри предложений как простой визуальный сахар без какой-либо семантики. Тогда я бы использовалspan
сdisplay: list-item
чтобы они выглядели как списки. Будет ли это правильно с семантической точки зрения? Нужна ли жертва семантической структуры?
Этот вопрос относится как к HTML, так и к XHTML, поскольку правила для вложенных элементов одинаковы. Под HTML я имею в виду HTML 4.01 Strict, под XHTML я имею в виду XHTML 1.0 Strict. Эта проблема как-то решена в HTML 5?
Чтобы быть явным, я хочусовместимое со стандартами, как синтаксически, так и семантически правильное решение, не нестандартный взломать любого рода. В частности,превращениеp
вdiv
это не решение для меня.
ul
элемент никогда не может быть ребенкомp
элемент<code>
против<pre>
против<samp>
для встроенных и блочных фрагментов кода<pre>
создание тегов браузерами закрывать абзацыМогу я иметь<pre>
Тег внутри<p>
тег в Tumblr?Должен ли ол / уль быть внутри<p>
или снаружи?неупорядоченный список в элементе абзацаГнездовые списки в абзацах в htmlСмотрите такжеCSS Design: укрощение списков @ A List Apart