Как правильно верстать блоки кода и его отдельные элементы
Фрагмент компьютерного кода обычно помещается в элемент <code>
. Фрагментом может быть всё, что каким-либо образом связано с программным обеспечением компьютера: HTML-элемент, название файла, название программы и тому подобные вещи. Одиночным (см. далее) элементом <code>
оформляются небольшие куски кода, находящиеся непосредственно в обычном тексте. Например:
<p>The <code>code</code> element represents a fragment of computer code.</p>
Для вёрстки блоков кода применяется конструкция <pre><code>
:
<p>Программа <code>foo-bar</code> выглядит так:</p>
<pre><code>
var foo = 'bar';
alert( foo ); // bar
</code></pre>
В этом случае все пробельные символы в коде будут печататься как есть, так как по умолчанию для элемента <pre>
в CSS определено свойство white-space
со значением pre
.
Для вёрстки блоков компьютерного вывода и ввода пользователя используются, в сочетании с <pre>
, элементы <samp>
и <kbd>
соответственно:
<pre>
<samp>Хотите?</samp>
<kbd>Да.</kbd>
<samp>Получите!</samp>
</pre>
Указание языка кода для элемента <code>
Если вы хотите как-то обозначить язык, которому принадлежит код, то это лучше сделать так:
<p>The <code class="language-html">code</code> element represents a fragment of computer code.</p>
<p>Программа <code>foo-bar</code> выглядит так:</p>
<pre><code class="language-javascript">
var foo = 'bar';
alert( foo ); // bar
</code></pre>
То есть с помощью атрибута class
и соответствующего его значения, начинающегося с language-
.
Одна из целей указания языка с помощью атрибута class
и его соответствующего значения, начинающегося с language-*
— подсветка синтаксиса; в частности, например, это используется популярной JavaScript-библиотекой Prism.