2011-08-05 17 views
0

私はこれを選択するより良い方法を見つけようとしています。基本的に<div>は、cat1のidを有し、でもcat1を有する<a>を有する。これを書くには良い方法がありますか?私は基本的にそれの中にあるdiv idと同じクラス名を持つ<a>を選択しようとしています。このCSSを改善するための提案はありますか?

div#cat1 a.cat1, 
div#cat2 a.cat2, 
div#cat3 a.cat3, 
div#cat4 a.cat4 { ... } 
+0

いいえ!それは得られるほど良いものです(しかし、あなたのHTMLをより良くセットアップして、それらのセレクタをより簡単に書くことができるかもしれません)。 – Beejamin

+0

親#idname div a {stuff; } – Marty

+0

ここには何を言っていませんか? :)これはうまくいくようですが、div#catXを削除することはできますが、 'a'に' cat1'などがない場合は... – Mrchief

答えて

1

その他のCSSの複雑さによっては、セレクタを短くすることができます。 #cat1 .cat1, #cat2 .cat2, ...またはちょうど.cat1, .cat2, ...

しかし、私はなど、あなたがそのような「CAT1」、「CAT2」としてクラス名を持っている理由を知って興味があると思いますが(もっと良い言葉の欠如のための「猫」)、単一のクラスを持つことができることすべてのアンカータグは共有できますか?

<div class="cat" id="cat1"><a class="cat cat1">...</a></div> 
<div class="cat" id="cat2"><a class="cat cat2">...</a></div> 

あなたはこれらのアンカーの全てに適用されるプロパティのためのあなたのCSSセレクタを簡素化することができ、この方法:これは、だからあなたのマークアップは次のようになるなどCAT1、CAT2、他に可能性があり

div.cat a.cat { ... } 

しかし、これらのいくつかを個別にスタイルする必要がある場合は、a.cat1などの特定のセレクタを使用することができます。

0

タグ名は必要ありません。

#cat1 .cat1 
関連する問題