Использование подчеркивания устарело и не проверено?
Использование ‹u›подчеркивание‹/u› устарело и не проверено?
Ответы (10)
Он устарел в HTML 4 http://www.w3.org/TR/REC-html40/present/graphics.html#edef-U поэтому не пройдет проверку.
Вместо этого используйте стили. Может быть, тег <span>
. Хотя, если вы хотите, чтобы то, к чему вы пытаетесь добавить подчеркивание, было выделено без включения стилей. Используйте тег <em>
и используйте CSS, чтобы сделать его подчеркиванием.
<u>
. С другой стороны, в чем-то вроде викторины, которая инструктирует людей определить часть речи каждого подчеркнутого слова, использование подчеркивания было бы проблемой семантики, а не презентации. Любое другое визуальное представление было бы семантически неправильным, если бы человекочитаемые инструкции не были соответствующим образом изменены.
- person supercat; 08.09.2014
Да, это устарело. Вместо этого используйте стили. Также обратите внимание, что подчеркнутый текст может сбивать с толку, так как он напоминает стиль ссылок по умолчанию, и может расстраивать некоторых пользователей.
При желании вы могли бы даже переназначить другой элемент HTML, например em
:
CSS:
em {
font-style: normal; /* Removes italics */
text-decoration: underline; /* Makes underline */
}
HTML:
<p>I like to <em>underline</em> words.</p>
<em>
и использовать CSS, чтобы подчеркнуть его по умолчанию.
- person BalusC; 21.01.2010
<u>
классом underline — это шаг назад. Но я согласен с тем, что подчеркнутый текст путают со ссылками - IMO вы вообще не должны подчеркивать текст на веб-страницах, кроме ссылок или заголовков (в этом случае вы должны прикрепить CSS к тегу заголовка).
- person DisgruntledGoat; 21.01.2010
<u>
была гораздо более подходящей, чем <em>
.
- person supercat; 08.09.2014
‹разглагольствовать›
Общий комментарий о семантике и стиле: хотя в этом, безусловно, есть правда, это урок, который некоторые люди слишком усвоили.
В реальной жизни многие люди используют курсив для выделения. Конечно, я мог бы создать CSS-стиль span.emphasized { font-style: italic;}, а затем вместо того, чтобы помещать ‹i›‹/i› вокруг выделенного текста, поставить ‹span class='emphasized'›‹/span ›. И что именно это дает, кроме большого количества дополнительного набора текста?
Кроме того, есть миллион причин, по которым я мог бы выделить часть текста, скажем, курсивом. Возможно, это название книги; возможно, я хочу подчеркнуть это; возможно, я использую условность выделения иностранных слов курсивом; и т.д. Если у меня есть 10 слов в документе, которые выделены курсивом по 9 различным причинам, педантичный ответ состоит в том, что я должен создать 9 различных записей в стиле CSS, чтобы описать все эти причины. Лично я почти никогда этого не делаю, потому что это ничего не дает. Да, теоретически я мог бы решить, что названия книг должны быть выделены курсивом, а не курсивом или что-то в этом роде. На практике вероятность того, что это произойдет, довольно близка к нулю, а если бы это произошло, а у меня в документе два таких названия книг, я могу просто изменить его дважды. Теоретически кто-то может захотеть отсканировать мой текст с помощью программы, которая ищет названия книг. Но на практике, если мы не договорились об этом заранее и не договорились об именах классов CSS, они никак не собираются этого делать.
Я не говорю, что CSS бесполезен. Наоборот. Когда у меня есть семантический объект, многократно повторяющийся в моем тексте и не имеющий естественного, общепризнанного стиля, тогда вполне правдоподобно предположить, что по мере продолжения работы над документом я, возможно, захочу изменить стиль. В этом случае гораздо проще изменить одну запись CSS, чем изменить сотню экземпляров. Или я могу захотеть использовать другой стиль в разных ситуациях, например, выделять предупреждающие сообщения красным цветом при отображении на экране, но выделять их жирным шрифтом при печати черно-белого документа.
Например, я обычно использую CSS для цитирования цитат, потому что я часто меняю свое мнение о выделении курсивом, отступе и размере шрифта. Я никогда не использую CSS для текста, который хочу выделить курсивом, потому что знаю, что крайне маловероятно, что я когда-либо захочу отобразить его как-то иначе, чем курсив.
Я хочу сказать, меня не волнует, что какой-то педант сказал Это правило, которому ты всегда должен подчиняться. Вы спросите, почему вы должны ему подчиняться? Но я только что сказал вам! Потому что это правило! Я использую инструменты и методы, полезные в настоящем приложении. (И да, да, есть множество эмпирических правил, которые действуют в 99% случаев, и о них не стоит думать, пока не появится редкое исключение.)
‹/разглагольствование›
<em>
лучше, чем <i>
в тех случаях, когда метод выделения должен зависеть от того, как отображается текст. Например, если блок текста выделен шрифтом рукописного ввода, попытка использовать курсив для выделения слова будет менее эффективной, чем, например. показывая это слово контрастным цветом. С другой стороны, в некоторых случаях использование чего-либо, кроме курсивного текста, было бы семантически неверным, и заменители следует использовать только в том случае, если альтернативы нет (например, рендеринг текста на терминале VT100).
- person supercat; 08.09.2014
Тег <u>
больше не используется в таблицах стилей.
Большинство браузеров будут продолжать распознавать его еще долгое время, просто из-за необходимости обратной совместимости с уже существующим содержимым. Но если вы хотите соответствовать XHTML, вам следует избегать его использования.,
Подробнее об устаревших тегах HTML можно прочитать здесь.
Да, это устарело в HTML 4. Однако вы можете просто использовать следующий css.
span.underline { text-decoration: underline; }
Однако подчеркнутое имя класса не является семантическим. Вы можете заменить его именем класса, описывающим подчеркнутый контент.
Тег устарел, но не устарел. Причина, по которой он не устарел, заключается в том, чтобы позволить браузерам поддерживать этот элемент для обратной совместимости.
Тег не определен в xhtml1-strict.dtd, но доступен в xhtml1-frameset.dtd и xhtml1-transitional.dtd. Его объявление выглядит следующим образом (не в Strict DTD):
<!ELEMENT u %Inline;> <!-- underline -->
<!ATTLIST u %attrs;>
Это сделано для обеспечения обратной совместимости с браузерами.
Не используйте этот тег, так как "Этот тег устарел в пользу таблиц стилей". Вскоре он может устареть. Скорее используйте таблицу стилей, например.
/** Underlining an anchor tag in CSS **/
a {
text-decoration: underline;
}
Устарело: да.
Проверено: ? Я думаю, это зависит от того, что вы используете для проверки.
http://www.codehelp.co.uk/html/deprecated.html
Да, это устарело.
Вы пометили свой вопрос как XHTML, так и HTML. тег U определенно устарел в xhtml-strict. Я думаю, что это все еще может быть в порядке в HTML-4-Transitional. Как говорили другие люди, вместо этого используйте стили. С хорошим именем они придают больше семантики вашим документам.
Если вы используете последнюю версию HTML или XHTML, то да, она устарела. Несмотря на это, в целом вам следует избегать подчеркивания всего, что не является ссылкой, так как это может еще больше запутать пользователя.