2011-11-13 4 views
1

2つ以上の他のCSSルールを組み合わせたCSSルールを作成することはできますか?例えば

.strong { 
     font-weight: bold; 
} 
.italicized { 
     font-style: italic; 
} 
.strong_and_italicized { 
     .strong; 
     .italicized; 
} 

私はjqueryのUIテーマのCSSファイルから複数の異なるクラスが割り当てられているいくつかのDOMオブジェクトを操作しているいくつかのjqueryの上で働いているので、私は尋ねます。複数のクラスを1つのクラスにまとめるほうがはるかに簡単で、DOMオブジェクトを選択しようとするときにはJavaScriptコードのそのクラスを参照するだけのようです。

+0

AFAIKあなたは傾けません。私は何年か前にブログでcssがconst値のような何かを持っていないと不平を言っていることを覚えています。 CSSを生成するツールがあります。私が覚えていれば、私は答えとして書くだろうが、私はできません。 -edit- ok答えは以下のとおりです –

答えて

7

私が知っているようなCSSクラスを組み合わせる唯一の方法は、LESSSASSのようなCSSプリプロセッサを使うことです。

これを使用したくない場合は、両方のクラスを別々に割り当てる必要があります。

1

Less CSSで正確に行うことができます。たとえあなたの例でも構文を使用しています。

4

純粋なCSSでは、他の2つの既存のルールを組み合わせる方法がありません。

あなただけの要素で両方のクラスを使用し、2つのCSSルールを結合する必要がある場合:CSSで

.foo { 
    color: #F00; 
} 
.bar { 
    font-size: 10px; 
} 

<div class="foo bar"></div> 

あなたできチェーンセレクタ:

.foo.bar { 
    color: #0F0; 
    font-size: 10px; 
} 

とjQueryが持つ要素を選択しますチェーン付きクラスもあります:

$('.foo.bar').do(stuff); 

さらに、スタイルを示す書き込みクラス。それは意味論ではなく、あなたのHTMLを再利用したいが、あなたのCSSを変更したい時にはより困難な時間になります。以下のような

何か:

.italicized { 
    font-weight: bold; 
} 

は文句を言わない意味を成し、一方:

.title { 
    font-style: italic; 
} 

は、スタイリングのための意味合いを持っていません。

関連する問題