<link>タグでtype =“ text / css”は必要ですか?


192

<link rel="stylesheet" type="text/css" href=...>オーバーに使う必要があるのか​​と思っていました<link rel="stylesheet" href=...>rel="stylesheet"マークそれはスタイルシートであるという情報は-そうtext/css、私は心配限りとして、実際には何も追加しません。

とにかく、HTMLで使用される唯一のスタイルシート形式はCSSです。それでtext/css、ブラウザに対して何が「言う」のでしょうか。一部のWebサイトはtype="text/css"属性を追加しているようですが(http://www.jquery.com/)、他のWebサイトは追加していません(http://www.youtube.com/)。

だから、何を使用することでtype="text/css"<link rel="stylesheet">の要素は、それはそれを含める必要がありますか?


1
正しいを返さないサーバーのフォールバックとして動作するように実装されている可能性がMIME-type.cssのファイルが、それは、これまで必要ではなかったようです。一貫性を保つために使用しています。
2011年

私が遭遇したもの、type = ""を指定しないでください。そうしないと、IEがスタイルシートをロードしません。
mhenry1384

現在、jquery.comサイトはを使用していませんtype="text/css"が、Stackoverflowサイトはまだ使用しています。
Marco Demaio 2018

回答:


149

HTML5仕様では必須ではありませんが、古いバージョンのHTMLでは必須です。

HTML 4 W3.org仕様

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をテストしても、互換性の問題は発生していません。


24
HTML4仕様では必須となる場合がありますが、実際にそれを強制するブラウザーはありません。
Spudley

4
さて

2
実際、HTML4.01仕様ではこのtype属性は必要ないようです。
すべての労働者は必須

30

いいえ、必要ありません。

HTML生活水準ますよ興味中の一部ではある要素、状態:link

link要素は、どちらか持っている必要がありますrel属性またはitemprop属性ではなく、両方を。

このtype属性は、リンクされたリソースのMIMEタイプを示します。それは純粋に助言です。値は有効なMIMEタイプの文字列である必要があります。

外部リソースリンクの場合、type属性はユーザーエージェントへのヒントとして使用されます...


「ユーザーエージェントへのヒントとして...」とはどういう意味ですか?「ユーザーエージェント」とは何ですか?
ScottyBlades

@ScottyBladesいい質問です!ユーザーエージェントとは、ユーザーに代わってHTML(この場合は)をダウンロードできるものです。ほとんどの場合、それはWebブラウザーですが、curlのような端末クライアントになることもあります。
alexmuller

6

HTML4.01はタグのtype属性を必要としません<link>。仕様によれば、type属性はブラウザへのヒントです。ブラウザがヒント付きコンテンツタイプをサポートしていない場合、ブラウザはフェッチをスキップできます。

type = content-type [CI]

この属性は、リンクターゲットアドレスで利用可能なコンテンツのコンテンツタイプに関する助言を提供します。これにより、ユーザーエージェントは、サポートしていないコンテンツタイプのコンテンツを取得するようにアドバイスされた場合、コンテンツをフェッチするのではなく、フォールバックメカニズムを使用することを選択できます。

この属性を使用する作成者は、リンクターゲットアドレスで利用可能なコンテンツと矛盾する可能性があるリスクを管理する責任があります。

  • 注:属性のの定義に<link>従います。<a>type

1
これは最も役立つ回答です=>基本的に:ブラウザがtype属性をサポートしない場合にのみtype属性を使用してください=> CSSのようなWeb標準ファイルには役に立たない
jave.web

4

私の理解では、text / css以外の形式でスタイルシートを指定できるようになっています。

これは(X)HTMLドキュメントのスタイルシートの主要な(そして標準の)配信形式になっていますが、仕様は実際にはさまざまなMIMEタイプを渡すことができるほど広く、標準のブラウザがそれらを実装していないだけです。


1

ほとんどの人には関係ありませんが、一部のシステム(少なくともMicrosoft SharePoint 2013)は、HTMLの処理方法(.masterページファイルの作成時など)を検討するときにこのtype属性を使用します。


-1

いいえ、それは単にMIMEタイプを表します。HTMLでは非推奨になりました。ブラウザーの互換性なしで使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.