Тег «закреслений текст» в html

Тег «закреслений текст» в html

До сих пір для закреслення тексту в HTML-коді широко застосовується тег . який є скороченим написанням тега . Серед безлічі значень англійського слова «strike» є «черкає» і «викреслювати». Ось як виглядають результати використання цих двох тегів:

  1. текст, закреслений за допомогою тега lt; sgt; → текст, закреслений за допомогою тега
  2. текст, закреслений за допомогою тега lt; strikegt; → текст, закреслений за допомогою тега

Як бачимо, результат ідентичний. Всі сучасні браузери розуміють ці теги, але, тим не менш, обидва вони нерекомендовані для використання. У специфікаціях XHTML і HTML5 вони взагалі відсутні. Та й в специфікації HTML 4.0 теж описуються як небажані.

Причина цього полягає в тому, що теги і відносяться до класу так званих тегів фізичного форматування. Тобто вони не несуть будь-якої смислового навантаження і всього лише визначають стиль відображення тексту. Однак сам по собі мова розмітки HTML призначений саме для семантичної розмітки тексту. А для візуального форматування призначені таблиці стилів CSS.

І хоча вам можуть бути байдужі такі академічні подробиці, але все ж не користуйтеся цими застарілими тегами. Якщо потрібно закреслити текст в HTML, краще використовувати тег . Ось результат його застосування:

  1. текст, закреслений за допомогою тега lt; delgt; → текст, закреслений за допомогою тега

Як бачимо, візуально немає ніякої різниці між . і . але за змістом - дуже навіть велика різниця.

тег призначений для того, щоб відзначати віддалені рядки тексту. Тобто він несе певну логічну інформацію про текст і відноситься до класу так званих семантичних тегів HTML. Форматування тексту як закресленого при застосуванні - це не призначення цього тега а всього лише наслідок його логічної суті.

Ще раз повторюся: якщо вам байдужа ідеологія мови розмітки HTML і важливий тільки візуальний ефект, просто вважайте, що для закреслення тексту призначений тег а не або . Хоча б з таких же міркувань, за якими пишете «професіоналізм» а не «професіоналізм».

Крім того, тег більш функціональний, ніж і . Він вміє передавати додаткову інформацію про текст за допомогою атрибутів «cite» і «datetime»:

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

Що ж робити, якщо вам потрібно вивести текст як закреслений, але позначати його як віддалений не хочете? Як уже було згадано вище, вам допоможе CSS. Більш конкретно - властивість «text-decoration», яке має значення «line-through». Ось так, наприклад, це можна зробити:

  1. текст, закреслений засобами CSS → текст, закреслений засобами CSS

Надто багато коду? Згоден. Тому можна його зменшити винісши інструкції CSS в окремий файл. У ньому можна, наприклад, наступним чином описати клас закресленого тексту:

Це дозволить писати в HTML-коді наступним чином:
  1. текст, закреслений засобами CSS → текст, закреслений засобами CSS

Цей код також довше, ніж у випадку з , але якщо бажаєте долучитися до семантичного Інтернету, з подібною надмірністю доведеться примиритися. Вдалого вам закреслення!