HTML в профилях/Ссылки и акценты
В данном разделе мы дополним рассмотренный ранее «базовый профиль» HTML элементами, позволяющими семантически выделить участки текста, а также присвоить им идентификаторы, обеспечивающие, в частности, возможность ссылаться на конкретный элемент (и, следовательно, — содержащийся в нем текст.)
Спецификация HTML5 предусматривает 27 основных элементов (ниже) для семантического выделения участков текста.[1][2] Из них, в данном разделе мы подробно рассмотрим шесть (a
, em
, strong
, i
, b
, span
), после чего лишь кратко опишем назначение оставшихся. Кроме того, здесь же мы рассмотрим необходимый элементу a
атрибут href
, а также атрибут class
, который может использоваться для «уточнения» смысла предлагаемых HTML5 элементов.
Элемент a и атрибут href
править
Данный элемент позволяет связать произвольный фрагмент (ноль или более узлов) HTML-документа с произвольным ресурсом, задаваемым атрибутом href
. С помощью размеченного таким образом текста пользователь (или алгоритм) может перейти по ссылке. В качестве значения атрибута используется интернационализованный идентификатор ресурса (англ. Internationalized Resource Identifier, IRI.) Частным случаем такого идентификатора является унифицированный идентификатор ресурса, или URI (англ. Unified Resource Identifier.)[3]
Пример. Элемент a и атрибут href
<!DOCTYPE html>
<html lang="ru">
<title >Элемент a и атрибут href</title>
<p >Слово <a href="http://example.com/"
>«пример»</a> в этом примере связано со
страницей http://example.com/ Всемирной
паутины.
Слово «пример» в этом примере связано со страницей http://example.com/ Всемирной паутины.
Такой идентификатор, в общем случае, может быть неполным (или относительным) и требовать разрешения с использованием базового IRI документа, которым (в отсутствие в документе рассматриваемого далее элемента base
) является IRI самого документа.
В случае, если базовый IRI (полученный по-умолчанию, или же указанный явно) совпадает с собственным IRI документа, для ссылок в пределах последнего можно использовать неполный IRI в форме #идентификатор
, где идентификатор элемента задается атрибутом id. Так, код см. описание <a href="#id" >атрибута id</a>
воспроизводится как см. описание атрибута id
.[4]
Некоторые примеры разрешения IRI приведены в таблице ниже.
IRI ссылки | Базовый IRI документа | Полный IRI ссылки |
---|---|---|
#hello | https://example/iri | https://example/iri#hello |
мир | https://example/iri/привет/ | https://example/iri/привет/мир |
https://example/iri/привет | https://example/iri/мир | |
../welcome | https://example/iri/привет/мир | https://example/iri/welcome |
/главная | https://example/iri/привет/мир | https://example.org/главная |
//example.com/ | https://example.org/example/ | https://example.com/ |
http://example.org/example/ | http://example.com/ | |
https://example.com/ | (любой) | https://example.com/ |
Атрибут id
править
Атрибут id
определяет уникальный в пределах документа идентификатор элемента. Автор документа может выбрать произвольную строку символов — кроме пробельных — в качестве такого идентификатора, при условии ее уникальности в данном документе.[4]
Использование атрибута проиллюстрируем следующим примером.
Пример. Атрибут id
<!DOCTYPE html>
<html lang="ru">
<title >Атрибут id</title>
<p >Подробную информацию об этом примере
можно найти <a href="#details" >в
следующем абзаце.</a>
<p id="details" >(Представим, что в
данном абзаце действительно приведена
такая информация.)
Подробную информацию об этом примере можно найти в следующем абзаце.
(Представим, что в данном абзаце действительно приведена такая информация.)
Основные акценты
править
Назначение элементов em
и strong
— акцентировать внимание читателя на определенных (как правило — коротких) участках текста. При этом, элемент em
позволяет выделить главное (но не обязательно — важное) в тексте[5] и применяется тогда, когда от его положения может зависеть смысл текста; например:
<p ><em >Эти</em> французские булки — такие мягкие.</p>
<p >Эти французские булки — <em >такие</em> мягкие.</p>
Элемент strong
сообщает о важности, серьезности, или срочности
заключенного в нем текста.[6] Например:
<p ><strong >Внимание!</strong> не пытайтесь повторить это дома!</p>
<p >Планы на сегодня: проверить почту; сходить за продуктами (уходя — <strong >не забыть выключить плиту!</strong>)</p>
Элементы i, b
правитьЭлементы em, strong обычно соответствуют курсивному и полужирному начертанию на печати. Однако, их роль в HTML более частная — указывать на главное и на важное или первоочередное в тексте, соответственно. В следующих случаях применяются иные элементы:
- для выделения терминов, биноменов (в биологии), идиом на ином языке, мыслей, смены интонации, etc. — элемент
i
;[7] - для выделения текста без какого-либо изменения его смысла или важности (как, например, ключевых слов в аннотации документа) — элемент
b
.[8]
Отметим, что при использовании элемента i
для выделения иноязычных идиом и биноменов (а равно и иноязычных терминов), данный элемент следует дополнять атрибутом lang. (А в тех случаях, когда направление письма языка содержания элемента отличается от такового для родительского элемента, — еще и атрибутом dir.)
Спецификация HTML5 предлагает использовать элемент b
в качестве «последнего средства» — когда смысл выделения не может быть передан такими элементами, как em, strong, mark, h1, …, h6, и другими подобными.[8]
Подчеркнем, что оформление данных элементов основными существующими ныне пользовательскими агентами полностью подчиняется CSS. В отличие от предыдущих версий HTML, спецификация HTML5 не предполагает, что содержание элемента i
будет представлено в курсивном (англ. italic) начертании, а содержание b
— в полужирном (англ. bold.)[7][8]
Атрибут class
править
Если некоторый элемент в документе используется в различных смыслах (как, например, рассмотренный выше элемент i
), которые тем не менее требуется различать, можно применять атрибут class
.
Значением атрибута является строка разделенных пробелами классов, назначаемых данному элементу, причем в качестве имени класса может вновь (подобно атрибуту id) использоваться произвольная строка символов — кроме пробельных.[9]
В числе прочего, классы позволяют обеспечить различное оформление для одних и тех же элементов при использовании CSS.
Элемент span
правитьДанный элемент можно назвать «пустым акцентом» — в том смысле, что сам по себе он ничего не сообщает о своем содержании. Ценность данного элемента в том, что как и прочие рассматриваемые здесь элементы, он может быть использован совместно с рядом «общих» атрибутов;[10] в частности:
- id — для обеспечения возможности сослаться на данный конкретный фрагмент текста;
- class — для «имитации» элементов, семантика которых не покрывается спецификацией HTML5;
- lang и dir — для включения в текст фрагмента (слова, фразы, предложения) на ином языке; (для чего — в ряде случаев — может оказаться более уместным элемент i.)
Прочие элементы
правитьabbr
- Сокращение или акроним. Допускается использование атрибута
title
для указания расшифровки, подобно:<abbr title="Extensible Markup Language" >XML</abbr>
.[11] bdi
,bdo
- Фрагмент текста с явной изоляцией (
bdi
) или переопределением (bdo
) направления письма. В отличие от прочих элементов,bdi
не наследует значение атрибута dir родительского элемента и по-умолчанию полагает его значениемauto
. В отношении элементаbdo
, спецификация HTML5 требует обязательного явного использования атрибутаdir
в значенииltr
или
rtl
.[12][13]
cite
,q
- Источник (
cite
; в частности — произведение, из которого взята цитата, или автор комментария) и цитата (q
.)[14][15] Например:<q >The cite element represents a reference to a creative work.</q> (see <cite >4.5.6 The cite element. HTML5. W3C (<time >2014-10-28</time>).</cite>)
code
- Произвольная машинночитаемая форма («код») — имя файла, название функции, фрагмент кода на некотором языке программирования, etc.[16] Например:
<p >Учетные записи пользователей определены файлом <code >/etc/passwd</code>.</p>
data
- Текст с привязкой машинночитаемых данных, указываемых атрибутом
value
. Может использоваться совместно с микроформатами и микроданными, или же для обеспечения работы связанного с документом программного кода. В случаях, когда искомыми данными являются временные отметки, следует применять элемент time.[17] del
,ins
- Удаленный и добавленный по сравнению с некоторой другой редакцией документа текст.[18][19]
dfn
- Определяемый термин. Используется вместо элемента i для выделения термина в его собственном определении.[20]
kbd
,samp
- Ввод (
kbd
) и вывод (samp
) при взаимодействии с машиной.[21][22] Например:<p >В ответ на вопрос <samp >Повторить (д/н)?</samp> введите <kbd >д</kbd>.</p>
mark
- Текст, важный в текущем контексте. При использовании в цитатах (и других подобных случаях) — акцентирует внимание на важности с точки зрения контекста, в котором приводится цитата. (В случае, если текст выделен в источнике цитаты — применяется элемент em, — или иной подходящий. Для слов, имеющих орфографические ошибки в источнике более уместным может быть элемент u.) При использовании в основном тексте документа может означать важность текста относительно текущих действий пользователя ресурса.[23]
ruby
- Огласовка идеографических символов в японском (фуригана) и китайском языках.[24]
s
- Текст, потерявший актуальность. Для фрагментов, удаленных в текущей редакции документа, следует использовать элемент del.[25]
small
- Вспомогательные замечания («мелкий шрифт») — уточнения, правовая информация, информация об авторстве, etc. Не приводит к «отмене» действия таких элементов, как em или strong.[26]
sub
,sup
- Нижний и верхний индексы. Как и в других случаях (например, em), спецификация требует применять эти элементы тогда и только тогда, когда от их использования зависит смысл текста. В частности, элементы могут применяться для оформления математических (совместно с var) и химических формул, а равно индексов переменных, подобно:
<p >В формуле выше, <var >R<sub ><var >ρ</var></sub><sub ><var >μ</var></sub><sub ><var >σ</var></sub><sub ><var >ν</var></sub></var> — тензор кривизны пространства-времени.</p>
.[27][28] time
- Временная отметка — как частный случай машинночитаемых данных. В случае, когда содержание элемента не соответствует одному из предписываемых HTML5 форматов, временная отметка в таком формате должна быть указана атрибутом
datetime
. Например:<p >Работа над материалом в Викиучебнике начата <time datetime="2014-12-24" >24 декабря 2014 г.</time></p>
.[29] u
- Текст, явно выделенный некоторым неуказанным нетекстовым способом. Данный элемент может быть использован для выделения слов с орфографическими ошибками. В прочих случаях, более уместным может быть использование одного из элементов ряда em, i, b, mark, cite, ruby.[30]
var
- Переменная в широком смысле — в математике, программировании, а также как произвольный замещаемый текст.[31]
Примечания
править
- ↑ Text-level semantics(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-20 г.
- ↑ Phrasing content(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-19 г.
- ↑ The a element(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-20 г.
- ↑ а б The id attribute(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-19 г.
- ↑ The em element(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-20 г.
- ↑ The strong element(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-20 г.
- ↑ а б The i element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-01-29 г.
- ↑ а б в The b element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-01-29 г.
- ↑ The class attribute(англ.) HTML5. W3C (2014-10-28). Проверено 2014-12-19 г.
- ↑ The span element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-01-29 г.
- ↑ The abbr element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The bdi element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The bdo element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The cite element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The q element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The code element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The data element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The del element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The ins element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The dfn element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The kbd element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The samp element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The mark element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The ruby element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The s element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The small element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The sub element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The sup element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The time element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The u element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
- ↑ The var element(англ.) HTML5. W3C (2014-10-28). Проверено 2015-02-07 г.
См. также
править
- В Википедии: