2013-04-10 56 views
0

我有一個div,它有一個背景圖像。但我終於明白,我忘記了底部的div的另一個背景。所以我用:after僞和插入一個。如何不顯示父母的背景

:after去的背景應該是一個透明的圖像,隨着身體的背景消失。但是現在父div的背景已經落後於僞元素:after

難道有什麼辦法可以讓我的父div的背景不出現在我的:after僞元素中嗎?

編輯 這裏是我的代碼

.foo{ 
    height: 30px; 
    padding-bottom: 20px; 
    background: url(i/myimage.png) no-repeat; 
} 
.foo:after{ 
    display: block; 
    position: absolute; 
    right: 0; 
    background: url(i/pseudo-elem-bg.png) no-repeat; 
    content: ' '; 
    height: 20px; /*takes the bottom padding 
} 
+0

請張貼您的問題代碼。 – Lowkase 2013-04-10 17:19:08

回答

0

::after pseudo element增加這是父母選擇的最後一個子元素,而不是一個兄弟姐妹(因此,元素選擇一個),所以如果孩子的背景是transparent,父母的背景顯得很自然。

您可能需要使用僞元素以外的其他解決方案,例如可能是真實元素。查看當前的代碼可能有助於爲您的案例找到最佳解決方案。

0

如果您要創建一個僞元素來添加另一個背景,您可以設置多個背景,而且它們將按照您設置的順序顯示。

喜歡的東西:

div { 
    background: url(bg.png), 
       url(otherbg.png); 
    background-position: center top, 
         center bottom; 
} 

你可以使用其他背景屬性和以同樣的方式對它們進行排序。