2011-05-18 30 views
3

我想知道是否有可能樣式化沒有標題前面的段落?樣式段落前面沒有標題層次元素

我猜的規則將是這個樣子:

p (direction for "without/not preceded by") h1, h2, h3, h4, h5, h6 { 

還是......不規則已經爲相反的寫:

h1, h2, h3, h4, h5, h6 + p { 

...因此段落可以有默認情況下,段落所需的樣式不在標題前面。

親切的問候, 戴爾

+0

其他元素*可以*'p' el ements如下?如果這些段落的HTML結構足夠有限,則可以選擇「僅限這些」而不是「除這些之外的任何內容」。 – BoltClock 2011-05-18 08:07:58

回答

5

我敢肯定你寫相反,像你描述。兩點很重要,但是:

  1. 這使我的心是用:not,或the negation pseudo-class第一個解決方案。然而,只需要一個簡單的選擇,所以

    :not(h1, h2, h3, h4, h5, h6) + p 
    

    將是非法的。

  2. 正如你寫了第二個選擇器,+ p術語僅適用於h6;粘貼到SelectORacle看到。正確的選擇是

    h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p 
    
1

肯定。

p {//styles here} 

然後,在樣式表中越往下,添加樣式的標題開頭段:

h1 + p, h2 + p, etc {//styles here} 

常規樣式的所有段落,你希望他們出現無標題前他們的方式段落將按照您的需要進行設計。具有前面標題的標題將獲得後面的樣式。

編輯:我要補充的是,後來的風格將從早期的風格繼承,所以你需要覆蓋某些規則...例如,如果你有你的所有p標籤background-color: red但你不想紅背景p之前是h,那麼你需要設置background-colornone或其他顏色等。

1

感謝您的建議傢伙。

我覺得有一些選擇器可以完成這項工作,但是使用該選擇器看起來非常狡猾。

我會去:

p { 

,然後在級聯下:

h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p { 

惱人的是,

p { 

是例外而非規則:d