2009-08-09 31 views
9

2つのスタイルを定義したいとします。CSSスタイルの継承

.color_red { color: Red; } 
.banner { display: block; width: 100%; } 

私はH1スタイルはCOLOR_REDスタイルを継承することができます方法はありますか?私は

.banner { ... inherit: color_red; } 
... 
<div class="banner">This is my banner.</div> 

バナーを持っているが、赤いテキストを持っている...私はこのような何かを行うことを好むだろう

<div class="banner color_red">This is my banner.</div> 

を行うにはしたくありません。

+0

メリットのいずれか... – annakata

+0

ずにあなたがHSSに見ることができませんします。http:/ /ncannasse.fr/projects/hss – Dykam

答えて

19

あなたが書く必要があります:

 
.color_red, .banner { color: Red; } 
.banner { display: block; width: 100%; } 
+0

これは私が思い付く最も近いものです。私はこのようにしなければならないと思う。 –

16

いいえ、スタイル定義を共有するために、直接、より良いこれを行う方法はありません。

.color_red, 
.banner 
{ 
    color: red; 
} 

私はあなたのことを指摘したいと思いますが間違った方向から問題に近づいている。あなたのマークアップはスタイルとは独立していて、理想的にはスタイルを開発に導くべきです。つまり、.color_redを定義することは重大な問題です。マークアップのセマンティクスについては何も言及していません。マークアップのビットをスタイルする必要がある場合は、どれくらいの問題に直面していますか?

はるかに良いあなたのマークアップは次のように存在することを可能にするには、次の

<div class="banner highlight">I am a banner AND I am highlighted!</div> 

はでサポートされている:

<style> 
.highlight 
{ 
    color: red; 
} 

.banner 
{ 
    display: block; 
    width: 100%; 
} 
</style> 
+1

私はこれが色のテンプレート化を可能にしたかったのです。暗い色1などを持つようなものです。私の例では、簡単にするため明示的な色を使用しています。私はC#で部分クラスと同じ効果を達成しようとしていました。 –