【发布时间】:2023-12-29 01:06:01
【问题描述】:
在撰写算法时,在段落内或甚至在句子中间写一些(伪)代码通常非常方便。为了直观地支持更复杂句子的结构,列表也很方便。
显然,一个句子不能分成不同的段落。但在我们的例子中,它必须是由于 HTML 嵌套规则。
段落为the p element,不能包含块级元素。不幸的是,对于我们来说,pre 和 lists 是 block-level。
如果我不遵守规范并在p 中包含pre 或ol/ul/dl,则p 会在元素的开始标记之前被任何解析器自动关闭我知道。 (这是由于p 上的SGML OMITTAG feature 设置。)也许这个和向后兼容性是设计决策背后的原因,即不允许pre 和p 内的列表。
有什么办法,如何在段落中包含列表和更长的代码sn-ps?
我可以重新制定我的句子和段落,而不需要 sn-ps 和列表,但它需要更多的思考和关注,并且可能会使我的文本更难阅读和理解。这对我来说不是解决方案。
我可以使用 code 和 whitespace: pre 和 display: block 来获得更长的代码 sn-ps 和 code 和 whitespace: pre-wrap 来获得更短的代码。这在语义上正确吗?
我可以将句子中的列表视为完全没有语义的视觉糖。然后我会使用 spans 和 display: list-item 使它们看起来像列表。从语义的角度来看,这是否正确?牺牲语义结构有必要吗?
这个问题适用于 HTML 和 XHTML,因为嵌套元素的规则是相同的。 HTML是指HTML 4.01 Strict,XHTML是指XHTML 1.0 Strict。 HTML 5 是否以某种方式解决了这个问题?
明确地说,我想要一个符合标准、语法和语义都正确的解决方案,而不是任何形式的非标准破解。具体来说,将p 变成div 对我来说不是解决方案。
相关问题
ulelement can never be a child ofpelement<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
另见
【问题讨论】:
-
我昨天遇到了相关问题:*.com/q/21651806/2157640 如果可以的话,我会添加language-lawyer 和paragraph 标签。
标签: html xhtml standards semantic-markup