私はこの問題について私自身の意見を得ようとしてきましたが、できなかったので、尋ねることに決めました。CSSのネストされたIDは適切ですか?
htmlのidはページ上の一意の要素を表すために作成されていることはよく知られているようですが、私の経験では、ページ上のユニークな要素の量は通常、 。さらに、ページ上の多くのユニークな要素が入れ子になっています。
のは、このような単純な構造を見てみましょう:
:それはこのコードの平和をスタイリングするために来るとき、あなたは一般的な二つのアプローチ(私はSCSSを使用していますので、例である)を持っている#content
form#search-filters
#datepicker
#search-results
を
- 階層的に整理します。平野宣言
#content { columns(8, 12); } #search-fiters { @include search-filters;
そして、私の意見から、それはすべてのロジックに対して何らかの形だが、最初の方法でそれを持っている気クーラーであると
#content { columns(8, 12); #search-filters { @include search-filters; etc.
上記の例のように、#search-filtersブロックの内容についても問題は解決しません。たとえば、フィルタをホストしているフォームの各要素にIDを生成したRailsの足場を使用し、そのIDを参照してスタイリングを提供したいとします。 要素はユニークで、検索フィルタのミックスインを拡張する任意の形式で一意であることがわかります。だからあなたはそれにidを持たせたい。 しかし、論理的に一貫するクラスを与えなければなりません。
この問題についてご意見はありますか?
P.S.私はこれらの2つのケースでパフォーマンスの違いがあるかどうかについて仕様を読んでみましたが、何も言わない: http://www.w3.org/TR/css3-selectors/#class-html
パフォーマンスインジケータは汎用仕様では見つかりません。そのようなことは実装に依存します。 – Alohci
興味深い関連記事http://oli.jp/2011/ids/ – lyuba