2012-02-13 17 views
5

Jeśli mam deklarację:Przestawianie jedną część wielokrotnego nieruchomości deklaracji css

h1 { 
    background-image: url(a.png), -webkit-linear-gradient(transparent, black), url(b.png); 
} 

Czy to możliwe, aby zastąpić tylko jedną część z wielu wartości, czyli (pseudokod):

h1.foo { 
    background-image: default, default, url(c.png); 
} 
+0

Czy 'background-image: url (a.png), -webkit-liniowy-gradient (przezroczysty, czarny), url (b.png);' nawet poprawny kod css? – elclanrs

+0

CSS3 pozwala na wiele deklaracji tła oddzielonych przecinkiem. Nie używałem CSS3 zbyt wiele, chociaż zaryzykowałem "tak" na twoje pytanie. – Akaishen

+0

@elclanrs Tak, jest, CSS3 pozwala na wiele obrazów tła (chociaż walidatory mogą oznaczać prefiksowane wartości). – joshnh

Odpowiedz

4

Obecnie nie. Można wykonać następujące czynności (zmiana wartości tej samej nieruchomości w skrótowej tła):

.foo { 
    background: url('...') 50% 50% no-repeat, 
       url('...') 50% 50% no-repeat, 
       url('...') 50% 50% no-repeat; 
} 

.foo { 
    background-position: 50% 50%, 75% 75%, 50% 50%; 
}

Ale bez względu na to w jaki sposób można rozwiązać go, zawsze będziesz musiał zadeklarować każdy obraz tła; nie możesz jeszcze "dziedziczyć" dla wielu obrazów tła.

+1

W rzeczywistości istnieje wartość "dziedziczenia", ale wiem, co masz na myśli. –

+0

Heh, powinienem być bardziej konkretny. Wyjaśniłem moją odpowiedź. – joshnh

+0

Zastanawiam się, jaka pozycja tła mogłaby zrobić dla -webkit-gradient() –

Powiązane problemy