Содержание
Фразовые теги в HTML. Размечем тексты с помощью фразовых… | by Tatiana Fokina
Как уже сказала выше, форматирование делится на визуальное и логическое. За визуальное форматирование отвечают теги визуального форматирования, за логическое — теги логического форматирования. Последние называют ещё семантическими.
К тегам визуального форматирования относятся:
<span>
;<mark>
;<br>
и<wbr>
;<i>
;<b>
;<sup>
и<sub>
;<ruby>
;<u>
;<s>
.
А это список тегов логического форматирования:
<a>
;<em>
;<strong>
;<cite>
;<code>
;<abbr>
;<dfn>
;<ins>
;<del>
;<q>
;<kbd>
;<samp>
;<var>
;<time>
;<small>
;<bdi>
и<bdo>
.
Сейчас расскажу подробнее о каждом фразовом элементе.
<span></span>
span
— это контейнер для текста.
span
используют, если нужно выделить другим цветом отдельные слова, словосочетания и предложения, изменить размер шрифта, добавить другой фон, обвести рамкой участок текста.
Со span
можно использовать атрибуты class=""
, title=""
, lang=""
и xml:lang=""
. Последний — это аналог lang
в XHTML-документах.
-- HTML --
Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил, что он у себя в постели превратился в <span>страшное насекомое</span>.-- CSS --
.scary {
color: tomato;
}
Так отобразится этот текст в браузере:
span
не семантический тег и влияет только на внешний вид элементов, если ему заданы стили. Для скринридеров и поисковых роботов он не имеет значения, но есть одно исключение.
Это исключение — трюк с атрибутом lang=""
. Если в тексте есть иностранные слова, то можно оборачивать их в span
с указанием другого языка. Тогда скринридер прочтёт их с правильным произношением.
В примере сайт на русском языке, но в тексте встречаются слова на английском. Укажем для неё другой язык:
<html lang="ru">
...
<body>
...
...
<p>Я больше не мёрджу бездумно. Как говорится, <span lang="en"> enough is enough</span>.
</p>
По умолчанию фраза внутри span
не будет отличаться от остального текста.
<br> и <wbr>
br
(break) переносит строку с текстом точно в том месте, где его поставили. При этом отдельный абзац не создаётся.
br
пригодится для форматирования стихов, текстов песен или адресов. Во всех остальных случаях для разбиения на абзацы нужно использовать тег p
.
Это одиночный тег и его не нужно закрывать.
Я сидел на пустом берегу.<br>Голубая вода Онтарио отражала череду моих мыслей —<br>Мир и войну, и мёртвых, навеки ушедших во тьму, чтобы воцарился мир.
В браузере этот текст выглядит так:
wbr
(word break opportunity) ставит потенциальный разрыв строки.
Если у вас слишком длинные слова или URL-адреса, то смело используйте wbr
. Он подходит для случаев, когда вы не уверены в месте переноса строки.
wbr
тоже одиночный тег.
Сэло не удивился, узнав, что солнечные пятна действуют на его друзей, попавших в хроно<wbr>-синкластический инфундибулум.
Закрепим: тег br
переносит строку сразу. С wbr
браузер сначала анализирует ширину контейнера, а уже потом ставит перенос.
Если нужно добавить дефис в местах разрыва строк, то используйте символ мягкого переноса ­
(-):
Эйя­фьядла­йёкюдль
Перенос сработает, когда ширина контейнера уменьшится.
<a></a>
a
— ссылка.
С а
всё просто. Используйте этот тег для ссылок на другие сайты или внутри одной страницы.
Простой пример использования:
<a href="https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BF%D0%B8%D0%B1%D0%B0%D1%80%D0%B0" target="_blank" rel="noopener noreferrer">Статья про капибар</a>
По умолчанию ссылки подчёркнуты. Оттенок синего и стиль подчёркивания зависят от браузера.
Автоматический стиль ссылки в ChromeСтиль ссылки в FirefoxСсылка в Internet Explorer 11Ссылка в Microsoft Edge
Важно, чтобы ссылки точно описывали куда они ведут. Куда вы попадёте, кликнув по «Подробнее» или «Далее»? Нужно прочитать весь текст, чтобы это понять. У пользователей скринридеров тоже возникнут проблемы.
Для тех, кому важно сохранить лаконичность ссылок, Аарон Густафсон предлагает такой выход:
<a href="/speaking-engagements/">
<b>A List of My</b>
Speaking
<b>Engagements</b>
</a>
В примере текст ссылки скрывается на уровне CSS. То есть он будет доступен для пользователей со скринридерами, но не отобразится в браузере из-за свойств display: none;
или visibility: hidden;
.
При клике по ссылке новая страница открывается в том же самом окне. Этим поведение можно управлять с помощью атрибута target=""
.
В примере ссылке задано значение _blank
. Это значит, что она откроется в новом окне. В этом случае обязательно указывайте rel="noopener noreferrer"
. Это поможет пользователям избежать фишинговых атак.
Якорные ссылки — это ссылки внутри одного документа.
Расставить такие ссылки просто. Для слова, к которому ведёт якорь, задайте id=""
. Для якоря укажите путь через атрибут href="#нужный-id"
. Ссылку для скринридеров можно описать в атрибуте aria-label=""
. Закрепим на примере:
В следующем <a href="#fat-cat" aria-label="Стрижка котов">параграфе</a> я подробнее расскажу о том, как правильно стричь кошек в теле.<a>Грумминг толстых котов</a>
Тег a
— важная часть логической разметки.
<em></em> и <i></i>
em
(emphasis) — эмфатическое ударение.
Эмфатическое ударение — выделение слова интонацией для усиления эмоциональной выразительности.
Используйте em
, если нужно сделать на части текста эмоциональный акцент и подчеркнуть его эмоциональную важность. Когда мы говорим, то делаем это при помощи интонации и громкости. В вебе для этого есть тег em
.
Эмфатическое ударение может понадобиться при уточнении или исправлении неверного слова, например, когда речь идёт о распространённом заблуждении. Ещё его используют, когда приводится контраргумент, чтобы выделить его значимую часть. Также эмфатическое ударение используется в сарказме. Ещё один случай использования — намёки.
Слово, на котором стоит эмфатическое ударение, может изменить значение всего предложения.
Обычно в тег em
оборачивают одно или два слова. Если информация срочная или автор настаивает на своей точке зрения, то em
можно выделить всё предложение.
-- Пример 1 --
Нет, это <em>он</em> выложил релиз в прод (не я).-- Пример 2 --
Да, мне <em>определённо</em> не хватает для полного счастья системной красной волчанки.-- Пример 3 --
На корабле что-то есть. <em>Нам нужно срочно эвакуироваться!</em>
Текст внутри em
выделяется курсивом.
Это тег логического форматирования. Поэтому скринридеры и голосовые помощники произнесут слово «он» с особой интонацией.
i
(italic) делает текст наклонным.
Этот тег нужен для визуального форматирования. В i
оборачивают названия, термины и иностранные слова. Он подходит также для обозначения прямой речи, мыслей, идиом и метафор.
-- Пример 1 --
<i>Низкоуровневый язык программирования</i> — язык программирования, близкий к программированию непосредственно в машинных кодах используемого реального или виртуального процессора.-- Пример 2 --
Пришлось читать документацию, <i lang="fr">c'est la vie</i>.
Такой текст выделяется курсивом:
Если пишите слова на иностранном языке, то для i
можно задать атрибут lang=""
или xml:lang=""
в XHTML-документах. Это поможет скринридерам и поисковым роботам.
Я работаю простым <i lang="en">cleaning manager</i>.
👉 Запомните, em
— семантический тег, а i
нет.
Об особенностях использования и различиях em
и i
подробно написал Факундо Коррадини в статье «You’re using <em> wrong».
<strong></strong> и <b></b>
strong
— логическое ударение.
Логическое ударение — выделение слова интонацией для усиления его смысла или повышения значимости.
С помощью strong
подчёркивают важность слов и предложений.
Придумайте пароль. Не 1234 или qwerty. <strong>Никому не сообщайте его!</strong>
Пользователь увидит такой текст полужирным, а скринридеры выделят интонацией.
b
(bold) делает текст полужирным.
Тег b
используют для визуального форматирования. Он не усиливает смысловой вес слов, в отличие от strong
.
Используйте b
, если нужно выделить названия книг, фильмов, имён, ключевые слова и тому подобное. В статьях с его помощью выделяют лид — первый абзац статьи.
Играю в <b>The Elder Scrolls</b> со времён пылевых бурь и скальных наездников.
В браузере строчка отобразится так:
👉 strong
нужен для логического форматирования, а b
— для визуального.
<mark></mark>
mark
— контекстное выделение текста.
Представьте, что готовитесь к экзамену. Вы распечатали ответы на вопросы и вооружились текстовыделителем, чтобы отметить самое главное. mark
похож на текстовыделитель, только в вебе.
Этот тег нужен для визуального выделения слов, которые имеют значимость для конкретного автора и в определённом контексте.
Используйте mark
, когда нужно выделить какое-то важное для контекста слово, новый элемент в списке, показать текущую дату в календаре и совпадения с поисковыми запросами.
-- Пример 1 --
Изюму из Малаги. Всё думала про Испанию. Перед тем как Руди родился. Такая <mark>фосфоресценция</mark>, голубовато-зеленоватая. Для мозга очень полезно.-- Пример 2 --
Чаще обращайтесь к argumentum ad populum: «<mark>Все мои знакомые говорят</mark>, что пользуются YotaPhone и ездят на ё-мобилях».
Хотя с точки зрения семантики mark
более значим, чем span
, это всё равно тег визуального форматирования.
mark
автоматически заданы стили background-color: yellow;
и color: black;
.
<s></s>
s
зачёркивает текст.
Используйте s
, когда нужно зачеркнуть неправильный или устаревший текст. Это может быть старая цена или неактуальное предложение. Олдскульные любители форумов и Хабра используют перечёркивание в шутках, построенных на оговорке.
2+2=<s>5</s> 4
К s
применяется свойство text-decoration: line-through;
.
Этот тег нужен исключительно для визуального форматирования и не учитывается поисковыми роботами и скринридерами. Чтобы последние объявляли зачёркивание, спецификация рекомендует задавать псевдоклассам ::before
и ::after
нужное значение свойства content
.
Вместо s
можно использовать CSS. Задайте элементу text-decoration: line-through;
.
-- HTML --
Невероятное предложение! Коробок спичек всего за <span>1000 $</span> 999 $.-- CSS --
.crossout {
text-decoration: line-through;
}
В браузере строка отображается так:
Раньше тексты можно было зачеркнуть с помощью тега strike
. Сейчас он исключён из спецификации.
👉 s
не подходит, если нужно нужно определить, когда и почему был удалён текст. В этом случае используйте del
.
<u></u>
u
(underline) подчёркивает текст.
Случаев использования u
не так много. Чаще всего его используют для выделения слов с орфографическими ошибками и для подчёркивания имён собственных в китайском языке. Это могут быть географические названия, организации, имена.
Во втором случае в тег взято название страны 德國 — Германии.
-- Случай 1 --
Мышь (кр<u>о</u>дётся).-- Случай 2 --
我來自<u>德國</u>。
К содержимому u
применяется свойство text-decoration: underline;
.
Этот тег отвечает за визуальное форматирование.
👉 Не используйте u
, если подчёркнутый текст можно перепутать со ссылкой.
<ins></ins> и <del></del>
ins
(insert) определяет добавленный в документ текст.
Используйте ins
когда нужно показать, какой текст был добавлен во время последнего обновления страницы.
С этим тегом можно использовать атрибуты cite=""
и datetime=""
. Вcite
пишут адрес документа, который объясняет, почему текст добавлен или отредактирован.
В datetime
пишут дату и время редактирования или удаления текста. Формат: год-месяц-деньTчас:минуты:секунды:часовой пояс.
<ins cite="https://ru.wikipedia.org/wiki/Falcon_Heavy" datetime="2018-03-06T01:32:03Z">Апдейт. Falcon Heavy успешно запустили.</ins>
Браузер подчеркнёт этот текст.
del
(delete) определяет удалённый или потерявший актуальность текст.
Тег del
понадобится, если нужно показать различия между несколькими версиями страницы.
Для del
доступны те же атрибуты, что и для ins
: cite=""
и datetime=""
.
<del>Маск не запустит Falcon Heavy.</del>
В браузере текст отобразится как зачёркнутый.
Когда в документе заменяют часть содержимого, то ins
используют вместе с del
.
<del>Маск вряд ли запустит Falcon Heavy.</del>
<ins cite="https://ru.wikipedia.org/wiki/Falcon_Heavy" datetime="2018-03-06T01:32:03Z">Первый испытательный запуск Falcon Heavy был успешно произведён 6 февраля 2018 года.</ins>
Этот код глазами браузера.
ins
и del
нужны для логического форматирования.
<q></q>
q
(quote) — короткая цитата.
Используйте q
, когда дословно цитируете кого-то в предложении.
Для q
можно задать атрибут cite=""
, в котором указывается источник цитаты.
Митник прав: <q cite="https://www.livelib.ru/book/1000092721-iskusstvo-obmana">Это естественно — стремиться к абсолютной безопасности, но это желание заставляет многих людей соглашаться с ложным чувством защищённости</q>.
Тег q
нужен для логического форматирования текста. Так поисковый робот поймёт, что в тексте есть цитаты из других источников.
Браузеры добавят для такого текста двойные кавычки.
q {
display: inline;
}q:before {
content: open-quote;
}q:after {
content: close-quote;
}
Так браузер отобразит текст внутри q
.
Отображение <q></q> в Chrome
Минутка типографики. Браузеры автоматически ставят английские двойные кавычки “…”. Их используют в английском для оформления цитат.
q {
quotes: "\201c" "\201d";
}
Русская типографика отличается от английской. Вместо английских кавычек принято использовать французские — ёлочки. Они выглядят так: «…».
Чтобы заменить стандартные кавычки, задайте для свойства quotes
значение “\00ab” “\00bb”;
.
q {
quotes: "\00ab" "\00bb";
}
Вуаля.
👉 Если нужно выделить большую цитату, которая занимает несколько строк или целый абзац, используйте тег blockquote
.
<cite></cite>
cite
— источник цитаты.
Оборачивайте в cite
цитируемые названия книг, статей, игр, фильмов, сериалов и любые ссылки на другие источники. Исключение — имена авторов. Для имён используйте b
.
Аарон Густафсон написал книгу <cite>Adaptive Web Design</cite> в 2011 году. В ней он …
Содержимое тегаcite
отображается по умолчанию курсивом.
Тег cite
семантический.
<abbr></abbr>
abbr
(abbreviation) — аббревиатура или акроним.
Аббревиатура — слово, образованное сокращением слова или словосочетания. Примеры: ГЭС и ФСБ.
Акроним — вид аббревиатуры. Акронимы образуются начальными звуками слов, которые входят в сокращение. Примеры: W3C, A11Y и Бенилюкс.
В abbr
можно можно раскрыть аббревиатуру в атрибуте title=""
.
<abbr title="Hypertext Markup Language">HTML</abbr> — это стандартизированный язык разметки документов в вебе.
Браузер подчеркнёт слово пунктирной линией, а при наведении появится всплывающая подсказка.
В чёрной оптимизации title
использовали не по назначению. Из-за этого современные скринридеры игнорируют содержимое атрибута. Поэтому лучше раскрывать аббревиатуру при первом упоминании в самом тексте без title=""
.
<dfn>Hypertext Markup Language (HTML)</dfn> — это стандартизированный язык разметки документов в вебе.
Тег abbr
семантический.
Помните, одна аббревиатура — один abbr
. Если сокращение повторяется, то не надо его ещё раз оборачивать в этот тег.
👉 Раньше для акронимов использовали отдельный тег acronym
, но он был исключён из последней версии стандарта. Так что пользуйтесь abbr
и не ломайте голову над видом аббревиатуры.
<dfn></dfn>
dfn
(definition) — термин.
Используйте этот тег для терминов, которые упоминаете впервые.
В dfn
можно вкладывать abbr
, если это термин-аббревиатура.
<dfn><abbr>HTML</abbr></dfn> — это стандартизированный язык разметки документов в вебе.
Вместе с dfn
можно использовать атрибут title=""
. В нём приводится определение термина.
Во втором примере в dfn
вложен abbr
. В этом случае аббревиатура раскрывается в атрибуте title=""
.
-- Пример 1 --
<dfn>Капибара</dfn> — полуводное травоядное млекопитающее из семейства водосвинковых.-- Пример 2 --
<dfn><abbr title="HyperText Markup Language">HTML</abbr></dfn> — это стандартизированный язык разметки документов в вебе.
В браузере текст станет наклонным.
dfn
— тег логического форматирования.
<code></code>
code
— фрагмент компьютерного кода.
Используйте code
для названий элементов языков программирования или целых строк кода.
Тег <code>code</code> используется для того, чтобы показать фрагмент JS-кода.
Отображается как текст, написанный моноширинным шрифтом
.
code
можно использовать внутри pre
, если нужно сохранить исходное форматирование. В этом случае сохранятся авторские пробелы и переносы.
<pre>
<code> ul
each val in [1, 2, 3, 4, 5]
li= val
</code>
</pre>
Получим такое форматирование:
Тег code
нужен для логического форматирования.
<samp></samp>
samp
(sample) — результат вывода компьютерной программы или скрипта.
Тег samp
полезен, когда в тексте цитируются системные ошибки и приводятся примеры вывода данных системой.
<p>Поиск выполнен.</p>
<p>
<samp>Обработано объектов: 82.<br>
Найдено подходящих объектов: 2.
</samp>
</p>
Браузеры сделают текст моноширинным
.
samp
можно комбинировать с pre
и code
.
<pre>
<code>console.log(2.3 + 2.4)<br></code>
<samp>4.699999999999999</samp>
</pre>
Получим такой текст:
samp
— тег логического форматирования.
👉 Тег tt
(TeleType) выполняет похожую функцию. Не используйте его. Он устарел и исключён из стандарта.
<kbd></kbd>
kbd
(keyboard) — названия клавиш.
Используйте kbd
, если пишите названия клавиш и голосовые команды.
Чтобы выйти, нажмите сначала <kbd>Esc</kbd>, потом <kbd>:</kbd>, затем <kbd>q</kbd> и <kbd>Enter</kbd>.
Если нужно написать сочетание из нескольких клавиш, то вложите дочерние kbd
в общий контейнер.
Скопируйте, нажав <kbd><kbd>Ctrl</kbd>+<kbd>C</kbd></kbd>.
Текст внутри kbd
написан моноширинным шрифтом
.
kbd
может содержать тег samp
или быть вложенным в него.
В kbd
вкладывают samp
, если нужно показать входные данные в виде текста, который отображается системой. Простой пример — это названия кнопок или пунктов и подпунктов меню в программах. В примере так указан путь к нужному пункту меню:
Найдите пункт с настройками по пути
<kbd>
<kbd><samp>File</samp></kbd> →
<kbd><samp>Settings</samp></kbd>
</kbd>
Так отобразит текст браузер.
В samp
вкладывают kbd
, когда нужно показать как система интерпретировала пользовательский ввод.
<p>
<samp>yarn start:theproject does not exist, did you mean:</samp>
</p>
<blockquote>
<samp>
<kbd>yarn start:the-project</kbd>
</samp>
</blockquote>
Браузер использует для текста всё тот же моноширинный шрифт
:
Тег kbd
нужен для логического форматирования.
<var></var>
var
(variable) — переменная.
Используйте var
для математических и программных переменных. В этот тег можно оборачивать любые фразы, которые легко заменить конкретными значениями.
-- Пример 1 --
У нас есть <var>число 1</var> и <var>число 2</var>.-- Пример 2 --
Она написала <var>E</var> = <var>m</var><var>c</var><sup>2</sup>.
Браузеры выделят var
курсивом.
👉 Для сложных математических формул и расчётов используйте специальный язык разметки MathML.
<small></small>
small
— дополнительная информация.
Используйте small
для небольших сносок и комментариев. Это могут быть предостережения, оговорки, информация о лицензии, авторских правах и тому подобное.
<p><small>© 2013-2018, команда капибар</small></p>
Размер small
зависит от основного размера шрифта и гарнитуры. К тегу применяется свойство font-size: smaller;
, которое уменьшает шрифт на одну условную единицу.
Можно вкладывать один тег small
в другой.
<p>Всем, всем, всем!
</p>
<p>
<small> У нас самая выгодная ставка по ипотеке.
<small>Предложение действительно, если ваш доход выше 100 веточек в месяц.
</small>
</small>
</p>
В этом случае размер текста будет меньше с каждым уровнем вложенности.
👉 Раньше small
использовался для физического форматирования вместе с big
. В последней спецификации он приобрёл семантическое значение, а big
был исключён. Вместо big
спецификация рекомендует использовать CSS.
<sup></sup> и <sub></sub>
sup
(superscript) — надстрочный текст.
Надстрочным текстом пишут сноски или математические знаки и символы.
-- 1 пример --
В день нужно платить всего 0,666 % <sup>*</sup>-- 2 пример --
a<sup>n</sup> × a<sup>k</sup>= a<sup>n+k</sup>
Надстрочный текст расположен над базовой линией, а его высота в два раза меньше основного. К sup
по умолчанию применяются свойства vertical-align: super;
и font-size: smaller;
.
sub
(subscript) — подстрочный текст.
Подстрочный текст используется в формулах.
H<sub>2</sub>SO<sub>4</sub>
Подстрочный текст меньше в высоту и располагается ниже базовой линии. По умолчанию sub
заданы свойства vertical-align: sub;
и font-size: smaller;
.
👉 Для сложных математических формул используйте язык разметки MathML.
<ruby></ruby>
ruby
— верхняя или нижняя текстовая аннотация.
Тег связан с агатом — типографским шрифтом, размер букв в котором равен 5,5 пунктам.
В теге указывается, как произносятся иероглифы в китайском, японском и других восточно-азиатских языках.
Внутрь ruby
вкладываются теги rt
и rp
.
В rt
размещается аннотация к тексту.
Тег rp
нужен для аннотаций для браузеров, которые не поддерживают ruby
. Если браузер поддерживает ruby
, то текст не отобразится.
<ruby>
東 <rt>tō</rt>
京 <rt>kyō</rt>
</ruby>
Браузеры разместят один текст над другим и уменьшат надстрочный шрифт.
Токио!
Можно вкладывать один элемент ruby
в другой. В этом примере указана транскрипция слов на хирагане и английском языке.
<ruby>
<ruby>東
<rt>とう</rt>南
<rt>なん</rt>
</ruby>
<rt lang=en>Southeast</rt>
</ruby>の方角
Текст в браузере отобразится так:
«Юго-восточное направление»
Тег ruby
нужен для визуального форматирования.
<bdo></bdo> и <bdi></bdi>
bdo
(bi-directional override) — изменение направления текста.
Тег bdo
будет полезен, если на сайте несколько языков, один из которых читается справа налево или наоборот. Справа налево пишут в арабском языке и иврите.
В bdo
обязательно нужно указывать атрибут dir=""
, который задаёт направление текста:rtl
— справа налево;ltr
— слева направо.
<bdo dir="rtl">קביברה</bdo> в переводе с иврита означает «капибара».
В браузере предложение выглядит так:
bdi
(bi-directional isolate) — отмена изменения направления текста.
Используйте bdi
для слов, которых не должно касаться изменение направления текста. Это полезно, когда направление текста заранее не известно или есть слова из языка с другим направлением.
В примере в тексте на иврите есть слово на английском, которое нам не нужно разворачивать.
-- HTML --
<div><bdi>C++</bdi> היא שפת תכנות מרובת פרדיגמות המבוססת על שפת התכנות C, שפותחה בשנות ה־80.-- CSS --
.content-rtl {
direction: rtl;
}
По умолчанию для bdi
задан атрибут dir="auto"
.
Поведение bdi
можно заменить стилями. Примените к span
правило unicode-bidi: isolate;
. Только помните, что в этом случае браузер не сможет понять семантику, которая передаётся с помощью bdi
.
👉 На сентябрь 2018 bdi
поддерживается браузерами частично.
<time></time>
time
— дата и время в машиночитаемом формате.
Используйте time
, если в тексте указаны точные даты и время. Это может быть время отправки комментария или сообщения, расписание, архив, календарь.
Этот тег не стоит использовать, если:
Внутри time
можно использовать несколько атрибутов:datetime=""
— дата и время в машиночитаемом формате;pubdate=""
— дата публикации документа;title=""
— дополнительная информация.
Время указывается внутри time
или в атрибуте datetime
. Во втором примере в datetime
указаны число и месяц.
-- Пример 1 --
<time>2 ноября 2018 года</time>.-- Пример 2 --
Акции Tesla упали из-за поведения Илона Маска в прямом эфире в <time datetime="09-07">в эту пятницу</time>.-- Пример 3 --
Мем опубликован <time title="Понедельник, 12-50">7 часов назад</time>.
Браузер отобразит эти строки как обычный текст. Содержимое атрибута title
станет всплывающей подсказкой.
Формат времени в datetime=""
жёстко определён.
- Год: 1985.
Должен состоять из четырёх и более цифр. - Год и неделя: 1984-W38.
W — номер недели. - Год и месяц: 1985-10.
- Год, месяц, день: 1985-10-25.
- Месяц и день: 10-25.
- Часы и минуты: 1:15.
- Часы, минуты, секунды: 1:15:39.
- Часы, минуты, доли секунд: 1:54:39.929.
Доли нужно округлять до трёх знаков. - Дата и время, разделённые «T» или пробелом: 1985-10-25T1:15. Время можно указывать с секундами и долями секунд: 1985-10-25T1:15:39.
- Часовой пояс можно задать несколькими способами: Z или +0000, +00:00, -0800, -08:00.
Двоеточие можно не использовать. - Местная дата и время: 1985-10-25T1:15Z.
- Временной интервал: P2T4h28M3S.
P, количество дней, T, количество часов (H), минут (M) и секунд (S). Дни и часы можно не указывать. - Временной интервал можно указать другим способом: 1w 2d 2h 30m 10.501s.
w — недели, d — дни, h — часы, m — минуты, s — секунды.
Можно писать слитно, а буквы могут быть в любом регистре.
В спецификации есть полный список форматов записи времени.
time
нужен для логического форматирования и важен для поисковиков. Благодаря этому тегу ссылки в поисковой выдачи размещаются в хронологическом порядке.
Браузеры автоматически преобразовывают дату из григорианского календаря в другую систему исчисления времени. Например, японский браузер покажет <time>16:00</time>
как «16:00時». «時» означает «час».
И немного информационного дизайна. В блоге UX-дизайнера Михаила Озорнина есть советы о том, как писать дату и время в интерфейсах.
Фразовые теги — это важная часть HTML-разметки. Эти теги отвечают за визуальное и логическое форматирование. Благодаря этому тексты становятся понятными для пользователей и разных технологий.
Визуальное форматирование помогает пользователям быстрее читать, ориентироваться в текстах и находить важные фразы. Логическое форматирование нужно для браузеров, вспомогательных и речевых технологий и помогает им интерпретировать тексты.
Всего лишь пара фразовых тегов сделает код структурированным и предсказуемым, а страницы доступными.
Если у разметки чёткая структура, то в ней сможете разобраться не только вы, но и другие разработчики. Это избавит команду от лишней головной боли и борьбы с легаси мельницами. Для поисковиков это тоже важно. У страниц с чёткой структурой больше шансов продвинутся вверх в поисковой выдаче.
Предсказуемость разметки означает, что браузеры отобразят страницу так, как это описано в стандартах.
Наконец, благодаря фразовым тегам вспомогательные технологии могут понимать тексты.
Как использовать основные теги HTML для SEO — STRONG, B, EM, I
До недавнего времени язык HTML предлагал использовать теги и для написания текста жирным или курсивом. С появлением новой версии языка разметки HTML5, появились дополнительные теги, которые образовали близкие по своему предназначению пары: <STRONG> и <B>, <EM> и <I>.
Их появление обусловлено развитием поисковых систем, которые сегодня стремятся понимать смысл того, что размещено на странице. Создатели предложили различать HTML-теги для текста, имеющие семантическое и визуальное форматирование. Теперь с помощью тегов визуального форматирования (<B>, <I>) мы выделяем часть текста визуально, а теги семантического форматирования (<STRONG>, <EM>) передают эмоции.
Визуально вы никогда не сможете различить, какой тег использован на странице. Жирный шрифт в HTML можно сделать и с помощью <STRONG>, и с помощью <B>, а курсив — и через <EM>, и через <I>. Тогда зачем же так усложнять?
Разгадка есть. Если включить голосовое озвучивание текста, то слова и фразы, выделенные тегами <STRONG> и <EM>, компьютер прочтет с особо эмоциональной интонацией и громкостью. Вся суть заключается в этом, так как семантическое форматирование помогает поисковым системам понять контекст написанного (смысл).
- <STRONG> — тег семантического форматирования. Он передает высокую важность выделенного текста. Визуально выглядит жирнее, чем основной текст.
- <B> — тег визуального форматирования. Просто выделяет текст жирным и не придает ему особой важности.
- <EM> — тег семантического форматирования. Предназначен для передачи большей экспрессивности слова или фразы относительно остального текста. Визуально слово/фраза отображаются курсивом.
- <I> — тег визуального форматирования. Используется для выделения курсивом, но не акцентирует внимание на слове или фразе.
В спецификации W3C все теги HTML размещены в двух разделах. и находятся в разделе «Структурированный текст». Это значит, что они определяют внешний вид, а также учитываются специальными программами, которые предназначены для изменения интонации и громкости.
Внешний вид необязательно будет жирным или курсивом. Он может регулироваться стилями CSS, но по-прежнему передавать браузеру значение большей важности выделенного тегами текста, относительно другого. <B> и <I> вынесены в раздел «Форматирование» и указывают браузеру, как отобразить фрагмент текста.
Семантическое значение HTML-тегов, разница между тегами i и em, b и strong
05.07.18 HTML 1614
Язык HTML разрабатывался таким образом, что практически каждый элемент в нем содержит семантический смысл. Семантический смысл тегов – это значит, что каждый тег не просто задает тот или иной внешний вид интерфейса на странице, но и еще сообщает о том, зачем этот тег, поясняет смысл и назначение тега.
Теги предназначены не обязательно для создания внешнего вида интерфейса, хотя в настоящее время они предназначены именно для этого. Внешний вид тегов может трактоваться и отрисовываться как угодно, на разных движках и ОС они могут отличаться внешне. Но семантическое значение тегов всегда одинаковое, такое, какое четко задано в спецификации.
Начинающие пользователи, как правило, вообще не задумываются о смысле тегов, им нужно только получить нужный внешний вид. Но это неправильный подход, нужно использовать теги осмысленно. Для чего это нужно? Всевозможные поисковые системы, сервисы используют семантические правила для извлечения необходимой информации, а это значит, что если станица правильно спроектирована с использованием подходящих тегов, то она будет гораздо ценней для этих поисковиков и сервисов. Это немаловажный фактор при продвижении сайта.
Например, часто можно встретить вопросы, какой тег использовать, тот или иной, когда они внешне выглядят абсолютно одинаково. Тег i и тег em как раз такие теги. Внешне ничем не различаются, но семантический смысл разный. Первый тег i просто выделяет текст курсивным начертанием, второй же тег em придает тексту, помещенному в него, особый смысл. Текст становится более важным на странице. То есть, если не смотреть внешний результат, то тег em дает смысловое выделение, а тег i нет. Когда же посмотреть в браузере результат, выглядят они одинаково, но особое значение у текста в теге em. Таким образом, разница между i и em установлена.
Другой аналогичный пример, теги b и strong. Здесь даже из названия можно понять, что второй тег гораздо значимый. Действительно, b просто выделяет текст жирным начертанием, а strong выделяет жирным и придает семантический смысл тексту, помещенного в этот тег. Особенно важно для поисковых систем, текст в strong играет большое значение при выдаче. Итак, разница между b и strong тоже установлена.
Таким образом, нужно уметь правильно понять, как применять теги в той или иной ситуации. Ведь от правильного применения зависит успех продвижения сайта в современных поисковых системах. Семантическое значение HTML достаточно просто понять, особенно актуально это для новых тегов HTML5. Они, например, позволяют четко обозначить структуру страницы, благодаря новейшим тегам. Но чтобы рассмотреть эту тему, потребуется написать целую статью, об этом позже.
Основы HTML — Изучение веб-разработки
HTML (Hypertext Markup Language) — это код, который используется для структурирования и отображения веб-страницы и её контента. Например, контент может быть структурирован внутри множества параграфов, маркированных списков или с использованием изображений и таблиц данных. Как видно из названия, эта статья даст вам базовое понимание HTML и его функций.
HTML не является языком программирования; это язык разметки, и используется, чтобы сообщать вашему браузеру, как отображать веб-страницы, которые вы посещаете. Он может быть сложным или простым, в зависимости от того, как хочет веб-дизайнер. HTML состоит из ряда элементов, которые вы используете, чтобы вкладывать или оборачивать различные части контента, чтобы заставить контент отображаться или действовать определённым образом. Ограждающие теги могут сделать слово или изображение ссылкой на что-то ещё, могут сделать слова курсивом, сделать шрифт больше или меньше и так далее. Например, возьмём следующую строку контента:
Моя кошка очень раздражена
Если бы мы хотели, чтобы строка стояла сама по себе, мы могли бы указать, что это абзац, заключая его в теги абзаца:
<p>Моя кошка очень раздражена</p>
Анатомия HTML элемента
Давайте рассмотрим элемент абзаца более подробно.
Главными частями нашего элемента являются:
- Открывающий тег (Opening tag): Состоит из имени элемента (в данном случае, «p»), заключённого в открывающие и закрывающие угловые скобки. Открывающий тег указывает, где элемент начинается или начинает действовать, в данном случае — где начинается абзац.
- Закрывающий тег (Closing tag): Это то же самое, что и открывающий тег, за исключением того, что он включает в себя косую черту перед именем элемента. Закрывающий элемент указывает, где элемент заканчивается, в данном случае — где заканчивается абзац. Отсутствие закрывающего тега является одной из наиболее распространённых ошибок начинающих и может приводить к странным результатам.
- Контент (Content): Это контент элемента, который в данном случае является просто текстом.
- Элемент(Element): Открывающий тег, закрывающий тег и контент вместе составляют элемент.
Элементы также могут иметь атрибуты, которые выглядят так:
Атрибуты содержат дополнительную информацию об элементе, которую вы не хотите показывать в фактическом контенте. В данном случае, class это имя атрибута, а editor-note
это значение атрибута. Класс позволяет дать элементу идентификационное имя, которое может позже использоваться, чтобы обращаться к элементу с информацией о стиле и прочих вещах.
Атрибут всегда должен иметь:
- Пробел между ним и именем элемента (или предыдущим атрибутом, если элемент уже имеет один или несколько атрибутов).
- Имя атрибута, за которым следует знак равенства.
- Значение атрибута, заключённое с двух сторон в кавычки.
Вложенные элементы
Вы также можете располагать элементы внутри других элементов — это называется вложением. Если мы хотим заявить, что наша кошка очень раздражена, мы можем заключить слово «очень» в элемент <strong>
, который указывает, что слово должно быть сильно акцентированно:
<p>Моя кошка <strong>очень</strong> раздражена.</p>
Вы, однако, должны убедиться, что ваши элементы правильно вложены: в примере выше мы открыли первым элемент <p>
, затем элемент <strong>
, потом мы должны закрыть сначала элемент <strong>
, затем <p>
. Приведённое ниже неверно:
<p>Моя кошка <strong>очень раздражена.</p></strong>
Элементы должны открываться и закрываться правильно, поэтому они явно располагаются внутри или снаружи друг друга. Если они перекрываются, как в примере выше, ваш веб-браузер будет пытаться сделать наилучшее предположение на основе того, что вы пытались сказать, что может привести к неожиданным результатам. Так что не стоит этого делать!
Пустые элементы
Некоторые элементы не имеют контента, и называются пустыми элементами. Возьмём элемент <img>
, который уже имеется в нашем HTML:
<img src="images/firefox-icon.png" alt="Моё тестовое изображение">
Он содержит два атрибута, но не имеет закрывающего тега </img>
, и никакого внутреннего контента. Это потому, что элемент изображения не оборачивает контент для влияния на него. Его целью является вставка изображения в HTML страницу в нужном месте.
Анатомия HTML документа
Мы завершили изучение основ отдельных HTML элементов, но они не очень полезны сами по себе. Теперь мы посмотрим, как отдельные элементы объединяются в целую HTML страницу. Давайте вернёмся к коду, который мы записывали в наш index.html
(с которым мы впервые встретились в статье Работа с файлами):
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Моя тестовая страница</title>
</head>
<body>
<img src="images/firefox-icon.png" alt="Моё тестовое изображение">
</body>
</html>
Здесь мы имеем:
<!DOCTYPE html>
— доктайп. В прошлом, когда HTML был молод (около 1991/1992), доктайпы должны были выступать в качестве ссылки на набор правил, которым HTML страница должна была следовать, чтобы считаться хорошим HTML, что могло означать автоматическую проверку ошибок и другие полезные вещи. Однако в наши дни, никто не заботится об этом, и они на самом деле просто исторический артефакт, который должен быть включён для того, что бы все работало правильно. На данный момент это все, что вам нужно знать.<html></html>
— элемент<html>
. Этот элемент оборачивает весь контент на всей странице, и иногда известен как корневой элемент.<head></head>
— элемент<head>
. Этот элемент выступает в качестве контейнера для всего, что вы пожелаете включить на HTML страницу, но не являющегося контентом, который вы показываете пользователям вашей страницы. К ним относятся такие вещи, как ключевые слова и описание страницы, которые будут появляться в результатах поиска, CSS стили нашего контента, кодировка и многое другое.<body></body>
— элемент<body>
. В нем содержится весь контент, который вы хотите показывать пользователям, когда они посещают вашу страницу, будь то текст, изображения, видео, игры, проигрываемые аудиодорожки или что-то ещё.<meta charset="utf-8">
— этот элемент устанавливает UTF-8 кодировку вашего документа, которая включает в себя большинство символов из всех известных человечеству языков. По сути, теперь документ может обрабатывать любой текстовый контент, который вы в него вложите. Нет причин не устанавливать её, так как это может помочь избежать некоторых проблем в дальнейшем.<title></title>
— элемент<title>
. Этот элемент устанавливает заголовок для вашей страницы, который является названием, появляющимся на вкладке браузера загружаемой страницы, и используется для описания страницы, когда вы добавляете её в закладки/избранное.
Давайте снова обратим наше внимание на элемент изображения:
<img src="images/firefox-icon.png" alt="Mоё тестовое изображение">
Как было сказано раньше, код встраивает изображение на нашу страницу в нужном месте. Это делается с помощью атрибута src
(source, источник), который содержит путь к нашему файлу изображения.
Мы также включили атрибут alt
(alternative, альтернатива). В этом атрибуте, вы указываете поясняющий текст для пользователей, которые не могут увидеть изображение, возможно, по следующим причинам:
- У них присутствуют нарушения зрения. Пользователи со значительным нарушением зрения часто используют инструменты, называемые Screen Readers (экранные дикторы), которые читают для них альтернативный текст.
- Что-то пошло не так, в результате чего изображение не отобразилось. Например, попробуйте намеренно изменить путь в вашем атрибуте
src
, сделав его неверным. Если вы сохраните и перезагрузите страницу, то вы должны увидеть что-то подобное вместо изображения:
Альтернативный текст — это «пояснительный текст». Он должен предоставить читателю достаточно информации, чтобы иметь представление о том, что передаёт изображение. В этом примере наш текст «My test image» («Моё тестовое изображение») не годится. Намного лучшей альтернативой для нашего логотипа Firefox будет «The Firefox logo: a flaming fox surrounding the Earth» («Логотип Firefox: огненный Лис вокруг Земли»).
Сейчас попробуйте придумать более подходящий альтернативный текст для вашего изображения.
В этом разделе рассмотрим некоторые из основных HTML элементов, которые вы будете использовать для разметки текста.
Заголовки
Элементы заголовка позволяют вам указывать определённые части вашего контента в качестве заголовков или подзаголовков. Точно так же, как книга имеет название, названия глав и подзаголовков, HTML документ может содержать то же самое. HTML включает шесть уровней заголовков <h2> (en-US)–<h6> (en-US), хотя обычно вы будете использовать не более 3-4 :
<h2>Мой главный заголовок</h2>
<h3>Мой заголовок верхнего уровня</h3>
<h4>Мой подзаголовок</h4>
<h5>Мой под-подзаголовок</h5>
Теперь попробуйте добавить подходящее название для вашей HTML страницы, чуть выше элемента <img>
.
Абзацы
Как было сказано раньше, элемент <p>
предназначен для абзацев текста; вы будете использовать их регулярно при разметке текстового контента:
<p>Это одиночный абзац</p>
Добавьте свой образец текста (вы создавали его в статье Каким должен быть ваш веб-сайт?) в один или несколько абзацев, расположенных прямо под элементом <img>
.
Списки
Большая часть веб-контента является списками и HTML имеет специальные элементы для них. Разметка списка всегда состоит по меньшей мере из двух элементов. Наиболее распространёнными типами списков являются нумерованные и ненумерованные списки:
- Ненумерованные списки — это списки, где порядок пунктов не имеет значения, как в списке покупок. Они оборачиваются в элемент
<ul>
. - Нумерованные списки — это списки, где порядок пунктов имеет значение, как в рецепте. Они оборачиваются в элемент
<ol>
.
Каждый пункт внутри списков располагается внутри элемента <li>
(list item, элемент списка).
Например, если мы хотим включить часть следующего фрагмента абзаца в список:
<p>Mozilla, мы являемся мировым сообществом технологов, мыслителей и строителей, работающих вместе ... </p>
Мы могли бы изменить разметку на эту:
<p>Mozilla, мы являемся мировым сообществом</p>
<ul>
<li>технологов</li>
<li>мыслителей</li>
<li>строителей</li>
</ul>
<p>работающих вместе ... </p>
Попробуйте добавить упорядоченный или неупорядоченный список на свою страницу.
Ссылки очень важны — это то, что делает Интернет Интернетом. Чтобы добавить ссылку, нам нужно использовать простой элемент — <a>
— a это сокращение от «anchor» («якорь»). Чтобы текст в вашем абзаце стал ссылкой, выполните следующие действия:
- Выберите некоторый текст. Мы выбрали текст «Манифест Mozilla».
- Оберните текст в элемент
<a>
, например так:<a>Манифест Mozilla</a>
- Задайте элементу
<a>
атрибут href, например так:<a href="">Манифест Mozilla</a>
- Заполните значение этого атрибута веб-адресом, на который вы хотите указать ссылку:
<a href="https://www.mozilla.org/ru/about/manifesto/details/">Манифест Mozilla</a>
Вы можете получить неожиданные результаты, если в самом начале веб-адреса вы опустите https://
или http://
часть, называемую протоколом. После создания ссылки, кликните по ней, чтобы убедиться, что она направляет вас туда, куда вы хотели.
href
сначала может выглядеть довольно непонятым выбором для имени атрибута. Если у вас возникли проблемы с тем, чтобы запомнить его, можете запомнить, что атрибут href образуется как hypertext reference («гипертекстовая ссылка»).
Теперь добавьте ссылку на вашу страницу, если вы ещё не сделали этого.
Если вы следовали всем инструкциям в этой статье, то вы должны увидеть в конечном итоге страницу, аналогичную рисунку ниже (вы также можете посмотреть её здесь):
Если вы застряли, вы всегда можете сравнить свою работу с нашим готовым примером кода на GitHub.
Здесь вы узнали только самую поверхность HTML. Чтобы узнать больше, перейдите на страницу Обучение HTML: руководства и уроки.
Базовые теги HTML — Джино • Журнал
Продолжаем знакомиться с языком разметки HTML, основой основ большинства сайтов в интернете. Раньше мы уже рассказывали об этом языке, а теперь изучим самые простые и самые необходимые теги и их атрибуты в HTML.
Напомним, что теги и атрибуты — это инструменты, с помощью которых контент на странице сайта организовывается тем или иным образом. Атрибуты прописываются внутри тегов и имеют рядом с собой знак «=
», а сами теги всегда заключаются в угловые скобки. Почти все теги в HTML являются парными и окружают с двух сторон ту часть контента, к которой они должны быть применены. Первый, открывающий, тег пишется без дополнительных символов, а во втором, закрывающем, теге после первой скобки появляется знак «/
».
Основное
<html></html>
Сигнализирует браузеру, что он имеет дело с HTML-документом.
<head></head>
Очерчивает часть документа, которая не видна на странице. Предназначен для тега названия, для размещения счётчиков веб-аналитики и не только.
<title></title>
Тот самый тег названия документа, его содержимое отображается в ярлыке вкладки браузера.
<body></body>
Ограничивает часть документа, которая видна на странице. О том, какие теги здесь могут использоваться, мы покажем далее.
Оформление текста
<i></i>
Выделяет текст курсивом.
<b></b>
Делает текст полужирным.
<u></u>
Подчёркивает текст.
<s></s>
Зачёркивает текст.
<cite></cite>
Предназначается для оформления цитат.
<tt></tt>
Имитирует шрифт печатной машинки.
<code></code>
Выделяет текст шрифтом Monospace, который используется для оформления фрагментов кода.
<font size=?></font>
Определяет размер текста с помощью значений от 1 до 7, которые нужно подставлять вместо вопросительного знака.
<font color=?></font>
Определяет цвет текста с помощью формата RRGGBB. Шестизначный код цвета так же вставляется вместо вопросительного знака.
Организация текста
<h2></h2>
Оформляет текст в виде самого большого заголовка.
<h6></h6>
Оформляет текст в виде самого маленького заголовка. Также можно использовать промежуточные значения 2, 3, 4, 5: чем больше цифра, тем меньше значимость заголовка в структуре текста.
Заголовок h6
<p></p>
Оформляет абзац.
<p align=?>
Выравнивает абзац нужным образом. Вместо вопросительного знака здесь можно поставить одно из четырёх значений: left
(по левому краю), right
(по правому краю), justify
(по ширине) или center
(по центру).
<br>
Добавляет перенос
строки.
<blockquote></blockquote>
Вставляет отступы с обеих сторон текста.
<ol></ol>
- Предназначается
- для
- нумерованных
- списков.
<ul></ul>
- Оформляет
- ненумерованный
- список.
<li>
Сопровождает каждый пункт в списке, обозначая его цифрой или маркером — в зависимости от типа списка.
Работа со ссылками
<a href="URL">ТЕКСТ</a>
«Зашивает» ссылку в нужный фрагмент текста. Адрес ссылки вставляется вместо «URL
», а текст по умолчанию окрашивается в синий цвет и подчёркивается.
<a href="URL">
<img src="imgURL"></a>
Добавляет ссылку, которая открывается при нажатии на картинку. Адрес картинки ставится вместо «imgURL
».
<a href="#якорь">ТЕКСТ</a>
С помощью этого тега можно сослаться на «якорь» — определённый фрагмент внутри просматриваемой страницы. К примеру, якоря используется для быстрого перехода из оглавления к соответствующей части статьи. Вместо «ТЕКСТ
» в первом теге необходимо поместить слово или фразу, нажав на которую, можно будет перейти в нужный участок страницы. А там, куда нужно привести читателя, необходимо добавить атрибут id="якорь"
в любой тег. Например, по этой ссылке можно перейти в раздел «Основное» в начале статьи.
Работа с графикой
<img src="URL">
Добавляет изображение. Вместо «URL
» нужна ссылка на необходимый файл.
<img src="URL" align=?>
Как и в <p align=?>
, этот параметр выравнивает изображение нужным образом, однако здесь применяется уже шесть значений: left
(слева), right
(справа) и center
(по центру), а также bottom
(внизу), top
(вверху) и middle
(посередине)
<img src="URL" border=?>
Создаёт рамку в виде сплошной линии вокруг изображения. Вместо вопросительного знака можно указать любое целое положительное число. Чем больше число, тем толще рамка.
<body background="URL">
Атрибут background
в теге <body>
позволяет установить картинку в качестве фона страницы.
<hr>
Создаёт сплошную горизонтальную линию.
Вы можете проверить работу всех перечисленных выше тегов, создавая свои собственные HTML-документы. Для этого подойдёт даже Microsoft Office Word или другой текстовый редактор. Необходимо лишь сохранить файл с кодом в формате .html. Но также существуют и HTML-редакторы, которые предназначены для работы с этим языком — о них мы расскажем в одной из наших следующих статей.
Элементы, теги и атрибуты — Основы HTML, CSS и веб-дизайна
Немного формальностей
Мало кто любит терминологию и формальности, но, к счастью, в мире HTML всё довольно просто.
Вкратце:
- Страница состоит из элементов.
- Элемент — это набор из тегов и содержания.
- Теги чаще всего идут парами: открывающий (
<tag>
) и закрывающий (</tag>
). Между ними находится то, что попадает под действие этого элемента. - Открывающий тег может содержать дополнительную информацию — атрибуты и значения атрибутов. Атрибуты позволяют «настроить» тег.
В примере из предыдущего урока есть элемент a
(anchor — якорь), состоящий из открывающего и закрывающего тегов <a></a>
.
<a href="https://ru.hexlet.io">Хекслет</a>
Это ссылка, и у неё есть атрибут href
со значением https://ru.hexlet.io
. Между открывающим и закрывающим тегами находится содержание — слово «Хекслет». Именно оно становится ссылкой.
А ниже есть картинка. Это пример одиночного тега, элемента, в котором не нужен закрывающий тег. Их ещё называют self-closing element — «самозакрывающиеся элементы».
<img src="https://i.imgur.com/789p0uP.png">
Как видите, мы указали атрибут src
(от английского «source» — источник) со значением https://i.imgur.com/789p0uP.png
. Это адрес файла изображения.
А некоторые элементы состоят из нескольких вложенных элементов. Например, списки:
<ol>
<li>Код. Тайный язык информатики (Чарльз Петцольд)</li>
<li>Не заставляйте меня думать (Steve Krug)</li>
<li>Дизайн привычных вещей (Donald Norman)</li>
</ol>
Это — пронумерованный список (ordered list), поэтому тег называется <ol>
. А каждая строчка списка — это элемент списка (list item) — <li>
.
На странице это будет выглядеть примерно так:
- Код. Тайный язык информатики (Чарльз Петцольд)
- Не заставляйте меня думать (Steve Krug)
- Дизайн привычных вещей (Donald Norman)
А непронумерованный список (unordered list) создаётся с помощью <ul>
. Заметьте, что достаточно лишь изменить открывающий и закрывающий тег всего списка, а сами элементы списка изменять не нужно.
<ul>
<li>Код. Тайный язык информатики (Чарльз Петцольд)</li>
<li>Не заставляйте меня думать (Steve Krug)</li>
<li>Дизайн привычных вещей (Donald Norman)</li>
</ul>
Вся мощь HTML заключается в возможности вкладывать элементы в элементы. Поэкспериментируйте с этим примером. Попробуйте понять, для чего нужен каждый тег.
See the Pen HTML lists with links by Hexlet (@hexlet) on CodePen.
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты.
Ошибки, сложный материал, вопросы >
Нашли опечатку или неточность?
Выделите текст, нажмите
ctrl + enter
и отправьте его нам. В течение нескольких дней мы исправим ошибку или улучшим формулировку.
Что-то не получается или материал кажется сложным?
Загляните в раздел «Обсуждение»:
- задайте вопрос. Вы быстрее справитесь с трудностями и прокачаете навык постановки правильных вопросов, что пригодится и в учёбе, и в работе программистом;
- расскажите о своих впечатлениях. Если курс слишком сложный, подробный отзыв поможет нам сделать его лучше;
- изучите вопросы других учеников и ответы на них. Это база знаний, которой можно и нужно пользоваться.
Об обучении на Хекслете
Как использовать тег со значками?
У меня есть набор значков и код CSS для привязки значков к элементу, но я не могу заставить тег «i» работать с набором значков без заполнения его содержимым. Нужно ли добавлять пользовательский код для тега?
Я видел, как Twitter Bootstrap использует тег «i» для значков.
Кроме того, я попробовал тег span, и это тоже не работает. Это работает, когда я использую теги «li» или «div», Тхо.
Что я упускаю? Заранее спасибо!
Это не работает
<i></i>
Это работает
<i>BLAH</i>
пример моего CSS
.icon {background: url('/images/icons.png') no-repeat top left;}
.icon-accessibility{ background-position: 0 0; width: 32px; height: 32px; }
html
css
icons
Поделиться
Источник
Fredrik Westerlund
04 июля 2013 в 13:20
4 ответа
11
Тег <i>
используется для обозначения того, что текст внутри должен быть выделен курсивом. Нет смысла использовать его в этом контексте.
Если вы все еще хотите сохранить его и не использовать что-то другое , например div
, проблема в том, что тег <i>
является встроенным элементом, а не блочным элементом, как div
. Добавьте display: inline-block;
к вашему CSS, и это сработает.
Поделиться
Fiona — myaccessible.website
04 июля 2013 в 13:23
2
Вы можете просто использовать тег img
для отображения значка. Это имеет больше смысла семантически, так как в конце концов это встроенный контент, и значок будет ощутимым.
Поделиться
Explosion Pills
04 июля 2013 в 13:26
2
Помимо семантики, вы ничего не видите, потому что элемент <i/>
по умолчанию равен inline
. Вероятно, вы захотите добавить display: inline-block;
в набор правил .icon
, чтобы соответствовать тому, как Bootstrap отображает их значки.
Если вы заботитесь о семантике, используйте вместо этого <div/>
или <span/>
.
Поделиться
André Dion
04 июля 2013 в 13:27
- Реализация панели инструментов со значками в WPF/XAML
В моем настольном приложении WPF я хочу реализовать панель инструментов с ключевыми действиями (добавить, обновить, удалить и т. д.), Что-то вроде того, что вы можете увидеть в любом почтовом сервисе веб-интерфейса. Для этого у меня есть большое PNG-изображение со всеми возможными значками…
- Как сделать пробел между тегами <i> (значками) в таблице?
У меня есть классический стол HTML. В одну колонку я хочу добавить 3 иконки со ссылками для редактирования, например, пользователей. Я использую twitter-bootstrap и глифсиконы. Как сделать больше пространства между значками??? Я предпочитаю использовать CSS. <td> <a href=’#’> <i…
1
Brthr, просто добавьте «display: inline-block» к вашему «.icon», это может сработать
Поделиться
Salih K
04 июля 2013 в 13:33
Похожие вопросы:
<i> тег в HAML
Как создать I-тег в haml? Пример: <i class=fa fa-search></i>
Android поддержка библиотеки 23.2. TabLayout со значками
Нет никаких значков во вкладках, если приложение построено с поддержкой библиотеки 23.2.0 У меня есть приложение с tabLayout значками. @Override public CharSequence getPageTitle(int position) {…
Как указать тег twitter bootstrap <i> во встроенном Ruby
— Новичок в Ruby на Rails и интеграция нескольких аспектов Twitter Bootstrap в (или, по крайней мере, попытка :))- У меня есть ссылка в обычном HTML с Twitter значками Bootstrap в нем: <li…
Диск выберите поле со значками в форме windows
Есть ли какой-либо элемент управления формой windows, который показывает список букв дисков со значками?
Java: JTree со значками плюс / минус для расширения и сворачивания?
Как сделать так, чтобы мое Jtree выглядело как что-то ниже, со значками плюс и минус, которые позволяют расширять и сворачивать? В настоящее время значение по умолчанию JTree расширяется и…
Реализация панели инструментов со значками в WPF/XAML
В моем настольном приложении WPF я хочу реализовать панель инструментов с ключевыми действиями (добавить, обновить, удалить и т. д.), Что-то вроде того, что вы можете увидеть в любом почтовом…
Как сделать пробел между тегами <i> (значками) в таблице?
У меня есть классический стол HTML. В одну колонку я хочу добавить 3 иконки со ссылками для редактирования, например, пользователей. Я использую twitter-bootstrap и глифсиконы. Как сделать больше…
Как создать вкладки со значками в JavaFX
Я хочу создать панель вкладок со значками, похожими на панель конфигурации Firefox с JavaFX: Есть ли какой-нибудь пример, который я могу использовать, чтобы увидеть, как это реализовать?
Параметры ввода (радио и checkbox) имеют кнопки со значками
Есть ли какая-либо доступная библиотека, которая преобразует параметры или входы radion имеет кнопки выбора со значками? Пример того, какой тип укладки вы ищете, приведен выше.
Как использовать тег <i> с тернарным оператором?
Я пытаюсь использовать тег i с тернарным оператором. Две строки unavailable,available работают отлично, но вместо них я хочу использовать 2 значка, такие как знак проверки(fa fa-check) и знак X(fa…
HTML Tag »
Раскрытие: Ваша поддержка помогает поддерживать работу сайта! Мы зарабатываем реферальный сбор за некоторые услуги, которые мы рекомендуем на этой странице. Подробнее
- Элемент
- Узнайте, как шрифты и веб-типографика работают в HTML: руководство для начинающих
- Что делает
HTML Tag
? - Элемент используется, чтобы отличать слова от окружающего текста, выделяя выделенный текст курсивом без дополнительного выделения выделенных курсивом слов.
- Display
- inline
- Usage
- textual
Code Example
Элемент & lt; i & gt;
используется для курсива .
Элемент
используется для курсивом .
по сравнению с
Элемент
превращает окруженный текст в курсивом .Элемент
указывает текстовое выделение , которое передается как текст , выделенный курсивом . Так в чем разница? Элемент
означает что-то , а элемент
вообще ничего не означает, кроме того, что текст должен быть выделен курсивом. Итак, когда вы должны использовать одно, а когда другое? Существует несколько жестких правил, если они вообще есть, но, вообще говоря, если вы хотите, чтобы выделил какой-то текст , вы должны использовать элемент
.С другой стороны, если курсив зависит только от стиля (, например, , латинское типографское сокращение), вы можете предпочесть использовать элемент
.
И не забывайте
Элемент определения (
), который используется для разметки слова или фразы, определенной в окружающем тексте, также выделяет текст курсивом. по умолчанию. Однако правила использования этого элемента вместо
намного проще.Его следует использовать только при разметке определяемого слова.
Длинный курсив
Иногда желательно выделить несколько строк текста курсивом. Это может быть краткое введение в содержание, примечание для читателя, «мелкий шрифт» того или иного вида. Как правило, вы также должны избегать здесь элемента
. Элемент
по сути является типографским элементом и является встроенным (не блоком).Это означает, что его следует использовать для разметки нескольких слов или фраз в более широком контексте. Если вы хотите выделить курсивом весь абзац, присвойте ему конкретный class
или id
и используйте CSS.
Адам — технический писатель, специализирующийся на документации и руководствах для разработчиков. Поддержка браузера
для i
html — Следует ли использовать теги для значков вместо?
Я запрыгнул сюда немного поздно, но наткнулся на эту страницу, когда размышлял над ней сам. Конечно, я не знаю, как Facebook или Twitter оправдывали это, но вот мой собственный мыслительный процесс того, чего оно стоит.
В конце концов, я пришел к выводу, что эта практика не так уж бессмысленна (это слово?). Фактически, помимо краткости и приятной ассоциации «i для значка», я думаю, что на самом деле это наиболее семантический выбор для значка, когда простой тег
нецелесообразен.
1. Использование соответствует спецификации.
Хотя, возможно, это не то, что W3 в основном имел в виду, мне кажется, что официальная спецификация для
может довольно легко разместить значок.В конце концов, стрелка ответа означает «ответить» по-другому. Он выражает технический термин, который может быть незнаком читателю и обычно выделяется курсивом. («Здесь, в Твиттере, это то, что мы называем стрелкой ответа ».) И это термин из другого языка: язык символов.
Если вместо символа стрелки Twitter использовал выкрикнуть
или [японский символ для ответа]
(на странице на английском языке), это будет соответствовать спец.Тогда почему не [стрелка ответа]
? (Я говорю здесь строго о семантике HTML, а не о доступности, о которой я расскажу.)
Насколько я могу судить, единственная часть спецификации, которая явно нарушается при использовании значков, — это фраза «диапазон текста» (когда тег также не содержит текста). Понятно, что тег
в основном предназначен для текста, но это довольно маленькая деталь по сравнению с общим назначением тега. Важный вопрос для этого тега не в том, какой формат содержимого он содержит, а в том, каково значение этого содержимого.
Это особенно верно, если учесть, что граница между «текстом» и «значком» может практически отсутствовать на веб-сайтах. Текст может больше походить на значок (как в японском примере), или значок может выглядеть как текст (как в кнопке jpg с надписью «Отправить» или фотографии кошки с наложенной подписью), или текст может быть заменен или улучшен с помощью изображение через CSS. Текст, изображение — кого это волнует? Это все содержание. Пока все — люди с ограниченными возможностями, браузеры с нарушениями, пауки поисковых систем и другие машины различного типа могут понимать это значение, мы сделали свою работу.
Таким образом, тот факт, что авторы спецификации не подумали (или не решили) прояснить это, не должен связывать наши руки с тем, чтобы делать то, что имеет смысл и соответствует духу тега. Тег
изначально предназначался для перенаправления пользователя в другое место, но теперь он может отображать всплывающее окно. Большой крик, правда? Если бы кто-то придумал, как открывать лайтбокс при нажатии до того, как будет достигнута спецификация, им все равно следовало бы использовать тег
, а не
, даже если он не полностью соответствовал стандарту текущее определение — потому что оно подошло ближе всего и все еще соответствовало духу тега («что-то произойдет, когда вы щелкнете здесь»).То же самое и с
— какие бы вещи вы в него не поместили или как бы творчески вы их ни использовали, он выражает общую идею альтернативного или отдельного термина.
2. Тег
добавляет семантическое значение элементу значка.
Альтернативный вариант переноса класса значка сам по себе —
, который, конечно, не имеет никакого семантического значения. Когда машина спрашивает
, что в ней содержится, она отвечает: «Я не знаю.Может быть что угодно ». Но тег
говорит:« Я использую другой способ сказать что-то, чем обычно, или, может быть, незнакомый термин ». Это не то же самое, что« У меня есть значок », но это намного ближе, чем
!
3. В конце концов, обычное употребление становится правильным.
В дополнение к вышесказанному, стоит учесть, что машинные считыватели (будь то поисковая система, программа чтения с экрана или что-то еще) могут в любой момент начать учитывать, что Facebook, Twitter и другие веб-сайты используют тег
для иконы.Их не столько заботит спецификация, сколько извлечение смысла из кода любыми необходимыми средствами. Таким образом, они могут использовать эти знания об обычном использовании, чтобы просто записать, что «здесь может быть значок», или сделать что-то более сложное, например, запустить просмотр CSS для подсказки значения, или неизвестно что. Поэтому, если вы решите использовать
для значков на своем веб-сайте, вы можете придать большее значение, чем это предусмотрено в спецификации.
Более того, если это использование получит широкое распространение, оно, вероятно, будет включено в спецификацию в будущем.Затем вы пройдете свой код, заменив
s на
! Так что может иметь смысл придерживаться того, что кажется направлением спецификации, особенно когда это явно не противоречит текущей спецификации. Обычное использование, как правило, диктует языковые правила больше, чем наоборот. Если вы достаточно стары, помните ли вы, что «веб-сайт» было официальным написанием, когда это слово было новым? Словари настаивали на том, что в них должен быть пробел, а в Интернете должны быть заглавные буквы.На то были смысловые причины. Но обычное употребление говорило: «Как бы то ни было, это глупо. Я использую« веб-сайт », потому что он более краткий и выглядит лучше». И вскоре словари официально признали это написание правильным.
4. Итак, я собираюсь использовать его.
Итак,
дает больше смысла машинам из-за спецификации, он дает больше смысла для людей, потому что мы легко связываем «i» со «значком», и — это всего лишь одна буква.Выиграть! И если вы обязательно включите эквивалентный текст либо внутри тега
, либо рядом с ним (как это делает Twitter), тогда программы чтения с экрана поймут, где нажать, чтобы ответить, ссылка будет использоваться, если CSS не загружается, а читатели с хорошим зрением и приличным браузером видят симпатичную иконку. Учитывая все это, я не вижу обратной стороны.
Обязательно ли писать теги HEAD, BODY и HTML?
Верно, что спецификации HTML разрешают опускать определенные теги в определенных случаях, но в целом это неразумно.
У этого есть два эффекта: он усложняет спецификацию, что, в свою очередь, затрудняет авторам браузеров написание правильных реализаций (как продемонстрировал IE, ошибающийся).
Это повышает вероятность ошибок браузера в этих частях спецификации. Как автор веб-сайта вы можете избежать этой проблемы, включив эти теги — поэтому, хотя в спецификации не сказано, что вы должны это делать, это снижает вероятность того, что что-то пойдет не так, что является хорошей инженерной практикой.
Более того, последняя версия HTML 5.В настоящее время говорится в спецификации 1 WG (имейте в виду, что эта работа еще не завершена и может измениться).
Начальный тег основного элемента может быть опущен, если элемент пуст, или
если первая вещь внутри элемента body не является пробелом или
комментарий, за исключением случаев, когда первое, что находится внутри элемента body, — это
мета, ссылка, скрипт, стиль или элемент шаблона.
http://www.w3.org/html/wg/drafts/html/master/sections.html#the-body-element
Это немного тонко.Вы можете опустить body и head, и тогда браузер определит, куда следует вставить эти элементы. Это может привести к недоразумению и путанице.
Так это
привет
<сценарий ...>
...
приводит к тому, что элемент скрипта является дочерним по отношению к элементу body, но этот
<сценарий ...>
привет
приведет к тому, что тег скрипта будет дочерним по отношению к элементу head.
Вы могли бы быть явным, сделав это
<сценарий ...>
привет
, а затем, в зависимости от того, что у вас будет первым, скрипт или h2, оба они предсказуемо появятся в элементе body. Это вещи, которые легко упустить из виду при рефакторинге и отладке кода. (скажем, например, у вас есть JS, который ищет 1-й элемент скрипта в теле — во втором фрагменте он перестанет работать).
Как правило, всегда лучше откровенно говорить о вещах, чем оставлять их открытыми для интерпретации. В этом отношении XHTML лучше, потому что он заставляет вас полностью четко описывать структуру элементов в вашем коде, что делает его более простым и, следовательно, менее подверженным неправильной интерпретации.
Так что да, вы можете опустить их и быть технически действительными, но, как правило, поступать так неразумно.
Тег
HTML — GeeksforGeeks
Тег в HTML используется для отображения содержимого курсивом.Этот тег обычно используется для отображения технического термина, фразы, важного слова на другом языке.
Синтаксис:
Содержание ...
Ниже программы иллюстрируют тег в HTML:
Пример 1:
HTML
|
Вывод:
Пример 2: Текст можно написать курсивом с помощью CSS.Если свойство CSS font-style равно курсиву, то текст будет выглядеть следующим образом:
HTML
|
Выход:
Использование:
- Используйте тег для слов, которые вы хотите отображать иначе, чем обычная фраза, для удобства чтения
- Такие теги, как и теперь определяют семантику, а не типографский вид.Поэтому для отображения текста курсивом пользователи могут использовать свойство CSS font-style.
- Используйте тег , только если он не размечен следующими элементами:
Поддерживаемые браузеры:
- Google Chrome
- Internet Explorer
- Firefox
- Opera
- Safari
Внимание читатель! Не прекращайте учиться сейчас. Освойте все важные концепции конкурентного конкурентного программирования с помощью веб-дизайна для начинающих | HTML курс.
Разница между тегами и HTML
1. Тег :
Это один из элементов HTML, который используется при форматировании текстов HTML. Он используется для определения текста в технических терминах, альтернативном настроении или голосе, мысли и т. Д.
Синтаксис:
Content ...
2. Тег :
Это также один из элементов HTML, используемых при форматировании текстов. Он используется для определения выделенного текста или утверждений.
Синтаксис:
Содержимое ...
По умолчанию визуальный результат такой же. Основное различие между этими двумя тегами заключается в том, что тег семантически подчеркивает важное слово или раздел слов, в то время как тег представляет собой просто смещенный текст, традиционно выделенный курсивом, чтобы показать альтернативное настроение или голос. Ниже приведен код, показывающий разницу между ними:
Пример-1:
HTML
|
Выход:
Здесь есть Никакого дополнительного акцента или важности слову «Железный человек».Здесь это просто указывает на то, что железо не является минералом или металлом, а относится к персонажу. Но в следующем предложении читатель будет использовать словесное ударение на слове «лучший».
Пример-2:
HTML
|
Вывод:
Хотя они кажутся одинаковыми, но семантическое значение различается.
Поддерживаемый браузер: Браузеры, поддерживаемые тегами и , перечислены ниже.
- Chrome
- Android
- Firefox (Gecko)
- Firefox Mobile (Gecko)
- Internet Explorer (IE)
- Edge Mobile
- Opera
- Opera Mobile
- Safari (WebKit)
- 906 Safari (WebKit)
- 906 Safari (WebKit)
- 906 Safari Mobile
Вниманию читателя! Не прекращайте учиться сейчас. Освойте все важные концепции конкурентного конкурентного программирования с помощью веб-дизайна для начинающих | HTML курс.
Тег HTML 5
Тег HTML
В более ранних версиях HTML тег
Для разметки текста с акцентом на ударение следует использовать тег HTML
Чтобы выделить текст курсивом, следует использовать свойство стиля шрифта CSS
.
Демо
Атрибуты
HTML-теги
могут содержать один или несколько атрибутов.Атрибуты добавляются к тегу, чтобы предоставить браузеру дополнительную информацию о том, как тег должен выглядеть или вести себя. Атрибуты состоят из имени и значения, разделенных знаком равенства (=), а значение заключено в двойные кавычки. Вот пример:
style = "color: black;"
.Есть 3 вида атрибутов, которые вы можете добавлять в свои HTML-теги: специфичные для элемента, глобальные атрибуты и атрибуты содержимого обработчика событий.
Атрибуты, которые вы можете добавить к этому тегу, перечислены ниже.
Атрибуты, зависящие от элемента
В следующей таблице показаны атрибуты, относящиеся к этому тегу / элементу.
Атрибут Описание Нет Глобальные атрибуты
Следующие атрибуты являются стандартными для всех тегов HTML 5 (хотя атрибут
tabindex
не применяется к элементамdialog
).-
ключ доступа
-
автокапитализировать
-
класс
-
контентный
-
данные- *
-
директор
-
перетаскиваемый
-
скрыто
-
id
-
режим ввода
-
это
-
идентификатор товара
-
itemprop
-
itemref
-
шт. Область применения
-
тип позиции
-
язык
-
часть
-
слот
-
проверка орфографии
-
стиль
-
tabindex
-
титул
-
перевести
Полное описание этих атрибутов см. В разделе «Глобальные атрибуты HTML 5».
Атрибуты содержимого обработчика событий
Атрибуты содержимого обработчика событий позволяют вызывать сценарий из вашего HTML. Сценарий вызывается при наступлении определенного «события». Каждый атрибут содержимого обработчика событий имеет дело с отдельным событием.
-
onabort
-
onauxclick
-
onblur
-
отмена
-
oncanplay
-
oncanplaythrough
-
на замену
-
onclick
-
вкл.
-
контекстное меню
-
коп.
-
на смену
-
нарезка
-
ondblclick
-
ондраг
-
ондрагенд
-
ондрагентер
-
ондрагэксит
-
ондраглейв
-
вперед
-
ондрагстарт
-
капля
-
на срок замены
-
одноразовый
-
завершено
-
ошибка
-
onfocus
-
onformdata
-
на входе
-
недействительно
-
нажатие клавиши
-
нажатие клавиши
-
onkeyup
-
onlanguagechange
-
загрузка
-
загруженные данные
-
загруженные метаданные
-
onloadstart
-
onmousedown
-
onmouseenter
-
onmouseleave
-
onmousemove
-
на маусе
-
на мышь над
-
onmouseup
-
паста
-
на паузу
-
в игре
-
в действии
-
в процессе
-
скорость изменения
-
сброшено
-
по размеру
-
в прокрутке
-
нарушение политики безопасности
-
востребовано
-
в поиске
-
при выборе
-
на смену
-
установлен
-
при подаче
-
приостановлено
-
ontimeupdate
-
рычаг
-
по объему изменить
-
ожидает
-
на колесе
Полный список обработчиков событий см. В разделе «Атрибуты содержимого обработчика событий HTML 5».
HTML i Tag - Учебник Республика
Тема: Теги HTML5 СсылкаПред. | След.
Описание
Элемент
В следующей таблице приведены контекст использования и история версий этого тега.
Размещение: Рядный Содержимое: Встроенный и текстовый Начальный / конечный тег: Начальный тег: требуется , Конечный тег: требуется Версия: HTML 2, 3.2, 4, 4.01, 5 Примечание: В отличие от
Синтаксис
Базовый синтаксис тега
HTML / XHTML: ...
В приведенном ниже примере показан тег
Вот текст, выделенный курсивом .
Вот текст, выделенный курсивом .
Атрибуты, специфичные для тегов
Тег
Глобальные атрибуты
Как и все другие теги HTML, тег
Атрибуты событий
Тег
Совместимость с браузером
Тег
Базовая поддержка -
- Firefox 1+
- Google Chrome 1+
- Internet Explorer 2+
- Apple Safari 1+
- Опера 2.
-