39

CSSクラスに名前を付けてimgSuperと呼びたいです。CSSクラスでキャメルケースを使用できますか?

4

4 に答える 4

44

技術的には可能ですが、CSS 構文はほとんどの場合大文字と小文字を区別しませんが、特定の条件下で一部のブラウザーではクラス名が大文字と小文字を区別するものとして扱われるため、危険です。これは、CSS ルールを HTML クラスに一致させるときにブラウザーが大文字と小文字を処理する方法が仕様で指定されていないためです。名前。

仕様セクション 4.1.3から:

すべての CSS 構文は、ASCII 範囲内で大文字と小文字を区別しません...

CSS では、識別子 (セレクターの要素名、クラス、および ID を含む) には、文字 [a-zA-Z0-9] と ISO 10646 文字 U+00A1 以降、およびハイフン (-) とアンダースコア ( _); 数字で始めることも、ハイフンの後に数字を続けることもできません。識別子には、エスケープ文字と ISO 10646 文字を数値コードとして含めることもできます (次の項目を参照)。たとえば、識別子「B&W?」「B\&W\?」と表記される場合があります。または「B\26 W\3F」。

...HTML属性の「id」と「class」、フォント名、およびURIの値の大文字と小文字の区別は、この仕様の範囲外です。

大文字と小文字が区別されるブラウザーと条件を学ぶよりも、最良のアプローチが最も互換性があることを理解するのが最善です: 特定の CSS クラスのすべてのコードで同じ大文字と小文字を使用し、2 つ以上の CSS クラスを作成しないでください。大文字と小文字のみが異なる名前。

于 2009-10-10T13:42:11.930 に答える
9

もちろん。 公式ルールは次のとおりです基本的に、名前を数字で始めるべきではなく、文字、数字、ハイフン、アンダースコア、およびエスケープまたはエンコードされた文字を使用できます。

ただし、慣例として、通常はキャメルケースの代わりにハイフンが使用されます。

于 2009-10-10T13:49:21.697 に答える
3

はい、クラス名は大文字と小文字が区別されるため、問題なく動作します。

ただし、一部のブラウザではこれが誤りであり、クラス名の大文字と小文字を区別しないことに注意してください。したがって、同じ名前で大文字と小文字の両方のバリエーションを使用することは避けてください。クラスimgSuperimgsuperは、一部のブラウザでは同じものとして扱われる場合があります。

于 2009-10-10T14:03:51.997 に答える
0

はい、できます。css ファイルでクラス "fooBar" を呼び出す場合は、マークアップで class="fooBar" を割り当てるときに一貫した大文字を使用するようにしてください。

于 2009-10-10T13:51:29.667 に答える