<code>
仅代表“计算机代码片段”。它最初被认为用于简单的代码片段,例如i++
or <code>
。
<pre>
“表示一个预先格式化的文本块,其中结构由排版约定而不是元素表示”。它的最初目的只不过是这样:以作者给出的相同方式提供文本,例如
+---------------------------------+
| |
| 警告!预先准备好的文本!| =o=
| __; ~^
+----------------TT------------°
|| _____________ _____________________
|| | 致奶奶 > | 完全不是陷阱 >
哦哦|| |°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
| ö || | | 。毫米,
~"""~"""~"""~""""~"""~"""~~""""~"""~"""~"""~"""~"""~ """~"""~"""~""..MWMWc...~"""~""
你不需要互相使用。<pre>
有自己的角色,就像<code>
有自己的角色一样。然而,<pre>
这是一种表示给定片段中的空白很重要的方式,这<code>
是一种缺失的角色。
但是,回到您的问题:请注意确切的措辞:
下面的示例显示了如何使用and 元素标记pre
代码code
块。
<pre><code class="language-pascal">var i: Integer;
begin
i := 1;
end.</code></pre>
该示例中使用了一个类来指示所使用的语言。
它说可以,不应该。您可以按照自己的意愿自由地执行此操作。W3C 不建议以任何方式使用它,但是,我个人建议您使用<pre><code>...
.
进一步说明
每当空格是代码和代码结构的一部分时,您应该声明应该保留此结构。由于代码中的结构是由排版约定(制表符、换行符、空格)给出的,我个人建议您使用<pre><code>
,即使它可以说是更多代码和 DOM 中的另一个节点。但是,每当缺少空格会使您的代码不完美时,这是必要的。
除此之外,您可以在不检查的情况下轻松区分内联代码和代码块element.className
,并且一些 JS 语法荧光笔可以很好地使用<pre><code>...
并自动剥离<code>
。
Also, if you use a general rule for <code>
with white-space:pre;
, you cannot use it for inline snippets without additional classes. If you were to create a class instead, you've won nothing compared to <pre><code>
.
References