2011-07-11 7 views
3

「次のようにH1、H2、H3、H4、H5、およびH6のいずれかの第一子の子孫要素を持つすべてのコンテンツIDで標識された要素を設定します。」CSSまず、子

私がきたセレクタを次のようになります。

#content:first-child h1, 
#content:first-child h2, 
#content:first-child h3, 
#content:first-child h4, 
#content:first-child h5, 
#content:first-child h6 {} 

これは間違いありませんか?もしそうなら、それはさらに単純化することができますか?

皆さん、ありがとうございます!

+0

@Ischinを必要とするすべてのタグにclass="header"を置くために覚えておく必要があるということです

#content:first-child .header { /* whatever */ } 

だろうそれはCSS2以来のことです。 – BoltClock

+0

あなたが書いたことに ':first-child'は何を適用していますか?それはどういう意味ですか? –

+0

@Chris "h1、h2、h3、h4、h5、およびh6のいずれかの子要素の子孫です。 – BoltClock

答えて

7

説明が少しはなく不明である、しかし、私は理解することができたものから、あなたが

  • は、それらの時間*の要素を選択し、スタイルはのようになるのどちらかにしたい:

    #content h1:first-child, 
    #content h2:first-child, 
    #content h3:first-child, 
    #content h4:first-child, 
    #content h5:first-child, 
    #content h6:first-child {} 
    

Example

  • #container要素自体を選択します。最初の子がh *ファミリの場合です。そして、あなたは純粋なCSSでこれを達成し、(このケースではjQueryを使用して)のような単純なJSを追加する必要はありません。

    $('#content').has('h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child'); 
    

Example

+0

はい、これはかなりです。いずれにしても、 ':* - 子'疑似クラスは、親ではなく子どもに付けるべきです。 – BoltClock

+0

最初のものは完璧です、ありがとう! – ChickSentMeHighE

1

あなたはあなたの時間のすべてにclass="header"を追加することができます*タグ。 `::最初の-child`はCSS3で導入されていなかった、だからあなたのCSSは、今ここでの問題はあなたが