2012-02-21 8 views
1

divsにこのような名前を付けるのは有効ですか?名前にスペースを持つxhtml/css divの名前を付けるベストプラクティス

<div class="frame header">Some content here</div>

?私は私が投稿し、それはXHTML厳格なことのようにあなたは、実際のマークアップでスペースを持つことができる場合、私はちょうど思ったんだけど推測

.frame { display: block; } 
.header { background-color: #efefef; } 

:その後、もちろん、CSSの私のようなものを持っているでしょうか?私はW3Cの検証をチェックしましたが、何らかの理由で、私がそこに入れたものはすべて渡しています。一口...

+0

これはdivの '名前'ではなく、2つのクラスの割り当てですが、もちろん正しいです。 – Smamatti

答えて

2

idsとクラスにスペースを入れることはできません。スペースを置くと2つのクラスが追加されるので、W3はそれをそのまま解釈してエラーを投げません。あなたのCSSは正しいです。

+0

アイデアは、私がスタイルシートのCSSプロパティの量を減らすというものでした。だから、私は一般的なクラスとしてフレームを使用して、私は別のプロパティを追加したようなヘッダーのようなものを使用します。それが意味をなさないかどうかわからないのですか? Hehe。私が推測するのは難しいです... – Brian

+0

ええと、見てみましょう** animuson **答え。ユニークなものが必要な場合は、IDを使用します。そして、あなたが複数の要素で持っていることのためのクラス。 – elclanrs

1

はい、できます。クラスは実際には要素の名前ではなく、クラスに適用されるクラスのリストで、スペースで区切られています。その要素にのみ関連する特定の '名前'が必要な場合は、id属性を使用します。ドキュメント内では完全にユニークでなければならず、またIDにはスペースがないことを覚えておいてください。

ような何か:何をやっている

<div class="frame" id="header">Some content here</div> 
.frame { display: block; } 
#header { background-color: #efefef; } 
+0

はい、idは一意ですが、idがより適切な場合でも、一意のクラスの使用には何も問題ありません。 – elclanrs

+0

さて、ありがとう、トン!私は何年も何年もhtmlをやっていますが、これを行うことができるかどうかは本当に分かりませんでした。決して尋ねられない。私は前に尋ねたやり方でそれが行われているのを見ましたが、検証するかどうかは分かりませんでした。とにかく、お互いに感謝します!ちょっと楽しかったですか? – Brian

0

は有効です。

ただし、html/xhtmlドキュメント内の任意の数の<div>要素は、表示目的で同じクラス定義を持つことができます。

xhtmlのname属性がid属性に置き換えられているため、特定の要素の一意の名前を付けて参照するには、常にID属性を使用する方が良いです。

関連する問題