在編寫算法時,在段落內部編寫一些(僞)代碼或(即使在句子的中間)通常都很方便。爲了在視覺上支持更復雜句子的結構,列表也很方便。段落中的列表或更長的代碼片段
顯然,一句話不能在不同的段落中分開。但在我們的情況下,它必須歸因於HTML嵌套規則。
段落爲the p
element,其中不能包含塊級元素。不幸的是,對於我們的情況,pre
和lists是block-level。
如果我不遵守規範,包括pre
或在p
ol
/ul
/dl
,該p
是我知道的任何解析器元素的開始標記前右自動關閉。 (這是由於p
上的SGML OMITTAG
feature設置造成的。)也許這和向後兼容性是拒絕pre
和p
內部列表的設計決定背後的原因。
有什麼辦法,如何將列表和更長的代碼片段包含到段落中?
我能重新制訂我的句子和段落並不需要片段和列表,但它需要大量的思考和關注,並可以讓我的文字難以閱讀和理解。這是對我來說不是解決方案。
我可以用code
與whitespace: pre
和display: block
更長的代碼段和code
與whitespace: pre-wrap
爲短的。這在語義上是正確的嗎?
我可以把句子裏面的列表看作僅僅是可視化糖而沒有任何語義。然後,我會使用span
與display: list-item
使它們看起來像列表。從語義的角度來看,這是否正確?語義結構的犧牲是必要的嗎?
這個問題同時適用於HTML和XHTML,因爲嵌套元素的規則是相同的。通過HTML我的意思是HTML 4.01嚴格,通過XHTML我的意思是XHTML 1.0嚴格。這個問題在HTML5中是以某種方式解決的?
要明確,我想要一個符合標準,既語法和語義正確的解決方案,而不是一個非標準黑客的任何一種。具體而言,將p
轉換爲div
對我來說不是解決方案。
相關問題
ul
element can never be a child ofp
element<code>
vs<pre>
vs<samp>
for inline and block code snippets<pre>
tag making browsers close paragraphs- Can I have a
<pre>
Tag inside a<p>
tag in Tumblr? - Should ol/ul be inside
<p>
or outside? - unordered list in a paragraph element
- Nest lists in paragraphs in html
昨天我遇到了相關問題:http://stackoverflow.com/q/21651806/2157640如果可以的話,我會添加[tag:language-lawyer]和[tag:paragraph]標籤。 – Palec