Является ли type="text/css" необходимым в теге?

мне было интересно, нужно ли использовать <link rel="stylesheet" type="text/css" href=...> над <link rel="stylesheet" href=...>. The rel="stylesheet" отмечает информацию о том, что это стиль - так text/css на самом деле ничего не добавляет, насколько я обеспокоен.

единственный формат таблицы стилей, используемый HTML, - это CSS, так что делает text/css "сказать" браузеру? Некоторые веб-сайты, похоже, добавляют type="text/css" атрибут (http://www.jquery.com/), в то время как другие не (http://www.youtube.com/).

Итак, какая польза от type="text/css" на <link rel="stylesheet"> элемент, и нужно ли включать его?

5 ответов


Это не требуется со спецификацией HTML5, но для более старых версий HTML это необходимо.

Html 4 W3.org spec

http://www.w3.org/TR/html40/struct/links.html#edef-LINK http://www.w3.org/TR/html40/present/styles.html

Type означает тип MIME таблицы стилей. Единственное поддерживаемое значение, которое я когда-либо видел, - это Text/CSS, поэтому, вероятно, HTML5 его отбросил. Я думаю, у них это было для более ранние версии, чтобы позволить будущим возможностям расширения, которых никогда не было.

используя HTML5 и не указывая тип, я до сих пор не сталкивался с проблемами совместимости даже при тестировании более старых версий IE.


это не обязательно, нет.

частью HTML жизни вы заинтересованы в том,на link элемент, в которой говорится:

A link элемент должен иметь либо или , но не оба.

на type атрибут дает тип MIME связанного ресурса. Это чисто консультативно. Значение должно быть допустимой строкой типа MIME.

внешних ресурсов, ссылки, используется в качестве подсказки для агентов пользователей...


Я понимаю, что это позволяет спецификацию таблиц стилей в форматах, отличных от text/css.

хотя это стало доминирующим (и стандартным) форматом доставки для таблиц стилей для (X)HTML-документов, спецификация на самом деле достаточно широка, чтобы позволить передавать различные типы MIME, просто стандартные браузеры их не реализуют.


HTML4.01 не требует type атрибут <link> тег. Согласно спецификации type атрибут является подсказкой для браузера. Если браузер не поддерживает намекаемый тип контента, он может пропустить его извлечение.

type = content-type [CI]

этот атрибут дает консультативную подсказку относительно типа содержимого содержимого, доступного по целевому адресу ссылки. Это позволяет пользователю агенты предпочитают использовать резервный механизм, а не извлекать контент, если им сообщают, что они получат контент в типе контента, который они не поддерживают.

авторы, использующие этот атрибут, несут ответственность за управление риском, что он может стать несовместимым с содержимым, доступным по целевому адресу ссылки.

  • Примечание: <link> выдает <a>'s определение для .

не относится к большинству людей, но некоторые системы (по крайней мере Microsoft SharePoint 2013) будут использовать этот атрибут типа при разработке способа обработки HTML (например, при создании .файл главной страницы).