開発者が使用しない主な理由を知りたかった
<meta http-equiv="content-script-type" content="text/javascript" />
および<meta http-equiv="content-style-type" content="text/css" />
彼らのウェブプロジェクトで。 (私も、ところで)
<script>
と<style>
のすべてのインスタンスで使用済みのtype
を宣言する必要がないため、欠点はないようです。それでも、実際、私は野生でそれらの1つを見たことがありません。これらの<meta>
タグに依存する場合、考慮しなければならない考慮事項はありますか?
W3C によると、http-equiv値の「content-style-type」および「content-script-type」属性はunknown
HTML5メタマークアップの場合!さらに、HTML5ページにそのようなマークアップがある場合、W3Cバリデーターは次のエラーをスローします。
行X、列Y:要素メタの属性http-equivの不正な値Content-Script-Type。
<meta http-equiv="Content-Script-Type" content="text/javascript">
したがって、本質的にはそれらを回避することになっています。
私が聞いたすべてのWebブラウザーは、デフォルトですべてのtype="text/javascript"
タグに<script>
を想定し、type="text/css"
タグに<style>
を想定します。 (私が聞いた唯一の意味のある代替手段は、MSIEの<script>
タグのVBScriptであり、これは大幅に非推奨です。CSSに代わるものはありません。)これを認識して、HTML5仕様では両方の属性を新しくオプションとして定義しています。
そのため、Content-Script-Type
およびContent-Style-Type
メタタグには意味がありません。私が知る限り、これらはすべてではないにしてもほとんどのブラウザーで無視されます。
これらの設定がHTML5で非推奨になったのは残念です。他の誰も言及していないように見えるので、デフォルトの文字セット設定をそこに置くこともできます!したがって:
<meta http-equiv="Content-Script-Type" content="text/javascript; charset=UTF-8;">
<meta http-equiv="Content-Style-Type" content="text/css; charset=UTF-8;">
<meta http-equiv="Content-Style-Type" content="text/css; charset=UTF-8;">
CSSメタは、型を宣言できないインラインスタイルにとって重要なので、次のようになります。
<span style="background:pink">
あなたの質問からこれらのタグについて学んだばかりの開発者として言えば、それはレガシーブラウザの呪いだと思います(私はあなたを見ています、IE6)。新しいタグについて学ぶとき、私は通常それらを使い続けないからです。私はいつもブラウザを想定していますかもしれません私が他の方法で証明するまで(時間がかかります)、そしてあなたが最小公分母にプログラムしなければならないので(あなたが後で段階的に強化する」)。つまり、この場合、より安全で冗長な方法を使用します。
そうは言っても、私は実際にこれらを試してみるかもしれません。コンテンツタイプを使用していない限り、リスクはほとんどありません以外text/javascript
およびtext/css
、それらは永遠にのように、想定されるデフォルトであるため。実際、@ duskwuffが指摘しているように、どちらを使用してもおそらく意味がありません。