2012-01-18 10 views
0

私はCSSとHTMLを使用しています。私は外部スタイルシートを使用しています.HTMLの内部にある "style"要素は、外部スタイルシートをオーバーライドしています。私の質問は、私は外部のCSSをovverideしていないスタイル "要素の中にhtmlコメントを置くときです。しかし、私がCSSのコメントを "スタイル"要素の中で使用すると動作します。 HTMLコメントはhtml内に属し、 "style"要素はまだhtmlです。なぜ、 "style"要素内のhtmlコメントがオーバーライドを失敗させるのですか?例えばhtml&cssのコメント

<html> 
    <head> 
     <title>test</title> 
     <style> 
      <!-- body{background:#eee;} --> 
     </style> 
    </head> 
    <body></body> 
</html> 

上記の例では、コメントタグにもかかわらず、スタイルを適用するの奇妙な行動を示しています。

デモ:http://jsfiddle.net/UyXhF/(クローム16.0.912.75のWindows 7でテスト)

+2

例を表示できますか? –

+1

例が必要かどうかわかりません...単に「HTMLコメント区切り記号がHTMLスタイルタグ内で動作しないのはなぜですか? –

+0

はい、どのような混乱のために申し訳ありません、どのジョセフが言った – samin

答えて

4

CSSは、マークアップ言語ではありません。 HTMLページ内のスタイルブロックは自律的なコードです。スクリプトブロック内のjavascriptと似ています。そのHTMLではない。したがって、HTMLコメントは、技術的にはスタイルブロック内のコメントではありません。

5

/*スタイル* /はスタイルコメント用、HTMLは上記のとおりです。

+2

Jamesの答えは正しいです: /*コメント* /はCSSであり、スタイルタグ内で使用する必要があります。 <! - コメント - >はhtmlであり、html内で使用する必要があります。 HTMLでjavascriptタグを定義する場合、コメントには/ * * /と//を使用する必要があります。別のコードを定義していることに注意してください。あなたはスタイルやスクリプトの中にhtmlタグを入れないでしょうか? :) また、内部CSSを覆すために外部CSSを使用する必要があります。その逆ではありません。それは意味をなさないカスケード賢明です。 – Eirinn