Интернет, компьютеры, софт и прочий Hi-Tech

Подписаться через RSS2Email.ru

Тег «зачеркнутый текст» в HTML

Тег «зачеркнутый текст» в HTML

До сих пор для зачеркивания текста в HTML-коде широко применяется тег <s>, который является сокращенным написанием тега <strike>. Среди множества значений английского слова «strike» имеются «черкать» и «вычеркивать». Вот как выглядят результаты использования этих двух тегов:

  1. <s>текст, зачеркнутый с помощью тега &lt;s&gt;</s>текст, зачеркнутый с помощью тега <s>
  2. <strike>текст, зачеркнутый с помощью тега &lt;strike&gt;</strike>текст, зачеркнутый с помощью тега <strike>

Как видим, результат идентичен. Все современные браузеры понимают эти теги, но, тем не менее, оба они нерекомендованы для использования. В спецификациях XHTML и HTML5 они вообще отсутствуют. Да и в спецификации HTML 4.0 тоже описываются как нежелательные.

Причина этого состоит в том, что теги <s> и <strike> относятся к классу так называемых тегов физического форматирования. То есть они не несут какой либо смысловой нагрузки и всего лишь определяют стиль отображения текста. Однако сам по себе язык разметки HTML предназначен именно для семантической разметки текста. А для визуального форматирования предназначены таблицы стилей CSS.

И хотя вам могут быть безразличны такие академические подробности, но все же не пользуйтесь этими устаревшими тегами. Если нужно зачеркнуть текст в HTML, лучше использовать тег <del>. Вот результат его применения:

  1. <del>текст, зачеркнутый с помощью тега &lt;del&gt;</del>текст, зачеркнутый с помощью тега <del>

Как видим, визуально нет никакой разницы между <s>, <strike> и <del>, но по смыслу – очень даже большая разница.

Тег <del> предназначен для того, чтобы отмечать удаленные строки текста. То есть он несет определенную логическую информацию о тексте и относится к классу так называемых семантических тегов HTML. Форматирование текста как зачеркнутого при применении <del> – это не назначение этого тега а всего лишь следствие его логической сути.

Еще раз повторюсь: если вам безразлична идеология языка разметки HTML и важен только визуальный эффект, просто считайте, что для зачеркивания текста предназначен тег <del> а не <s> или <strike>. Хотя бы из таких же соображений, по которым пишете «профеССионализм» а не «профеСионализм».

Кроме того, тег <del> более функционален, чем <s> и <strike>. Он умеет передавать дополнительную информацию о тексте с помощью атрибутов «cite» и «datetime»:

  • Атрибут «cite» предназначен содержать ссылку на документ, в котором приведена причина удаления данного текста и, может быть, другие подробности о его редактировании.
  • Атрибут «datetime» предназначен указывать дату и время редактирования данного текста.

Что же делать, если вам нужно вывести текст как зачеркнутый, но помечать его как удаленный не хотите? Как уже было упомянуто выше, вам поможет CSS. Более конкретно – свойство «text-decoration», которое имеет значение «line-through». Вот так, например, это можно сделать:

  1. <span style="text-decoration:line-through">текст, зачеркнутый средствами CSS</span>текст, зачеркнутый средствами CSS

Чересчур много кода? Согласен. Поэтому можно его уменьшить вынеся инструкции CSS в отдельный файл. В нем можно, например, следующим образом описать класс зачеркнутого текста:

.s {
    text-decoration: line-through;
}
Это позволит писать в HTML-коде следующим образом:
  1. <span class="s">текст, зачеркнутый средствами CSS</span>текст, зачеркнутый средствами CSS

Этот код также длинее, чем в случае с <del>, но если желаете приобщиться к семантическому Вебу, с подобной избыточностью придется примириться. Удачного вам зачеркивания!

Автор: Дмитрий Скоробогатов, 21.01.2011


Предыдущие публикации:

Биржа долевых инвестиций SIMEX.

Последнее редактирование: 2011-01-21 16:17:03

Метки материала: тег, html, зачеркнутый текст, тег зачеркнутый текст, текст в html, язык разметки html


16 комментариев

Последние десять комментариев:

29.05.2016 05:07:13 #
Google Chrome Гость
не получается, что не так?
28.07.2012 16:58:27 #
Mozilla Firefox dima
В смысле в письмах? Потому что введенный пользователем текст почтовые программы не интерпретируют как HTML.
28.07.2012 09:45:43 #
Mozilla Firefox Гость как
на майле не получается
30.03.2012 14:37:39 #
Mozilla Firefox dima
На ВК используется BBCode? HTML? Какие теги разрешены?
30.03.2012 13:28:43 #
Mozilla Firefox Гость Игорь
Почему?НА ВК не проходит??
23.10.2011 02:22:35 #
Mozilla Firefox dima
Незачто
22.10.2011 23:41:54 #
Google Chrome Гость ивар
спасибо
22.10.2011 17:25:32 #
Mozilla Firefox dima
В комментах на сайтах HTML ограничен, если вообще не запрещен. Если желаете изучить этот язык разметки, то создайте текстовый файл, смените ему расширение на .html и экспериментируйте. Редактировать его надо чем нибудь вроде notepad-а, результат смотреть браузером.
22.10.2011 16:33:54 #
Google Chrome Гость ивар
На различных сайтах, изредка,в коментах втыкал. И всегда почему-то только теги отобр. От чего так, в суть не вникал.    
21.10.2011 08:58:32 #
Mozilla Firefox dima
В смысле, на этой странице не проходит? Здесь используется BBCode а не HTML, а статья именно про HTML. Куда именно Вы вводите теги?

Оставьте, пожалуйста, свой комментарий к публикации

Представиться как     Антибот:
   

Просьба не постить мусор. Если вы хотите потестить xBB, воспользуйтесь кнопкой предварительного просмотра на панели инструментов xBBEditor-а.


© 2007-2017, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.