RGBa: jak zrobić kanał alfa (przezroczystość) w CSS?
Przezroczystość jest jedną z tych dziwnych rzeczy, które każda przeglądarka traktuje po swojemu. Od dawna w CSS dostępny atrybut opacity sprawia webmasterom wiele problemów. Zmusza wszystkie elementy potomne do tego, by również były przezroczyste, a jego obsługa w różnych przeglądarkach jest dość kłopotliwa – tak, że właściwie trzeba pisać kilka oddzielnych własności.
Istnieje jednak sposób na takie zadeklarowanie koloru w CSS, że będzie on obsługiwał kanał alfa (przezroczystość). Wygląda on następująco:
background: rgba(200, 200, 200, 0.5);
dzięki RGBa można łatwo stworzyć przezroczystą warstwę, która w żaden sposób nie będzie wpływała na jej potomne elementy. Pierwsze trzy wielkości określają kolor warstwy w przestrzeni RGB (przyjmując wartości od 0 do 255), zaś ostatnia określa stopień przezroczystości.
Na początku zdefiniujmy w arkuszu stylów klasę dla obrazka, na który nałożymy przezroczystą warstwę:
.obrazek { width: 200px; height: 300px; position: relative; }
a następnie klasę dla samej warstwy przezroczystości:
.alfa { position: absolute; width: 180px; height: 280px; top: 10px; left: 10px;
/* w razie problemów */
background: rgb(200, 200, 200);
/* przezroczystość */
background: rgba(200, 200, 200, 0.5);
}
Niektóre niezbyt kompatybilne ze standardami przeglądarki – przede wszystkim Internet Explorer 6, 7 i 8 – nie radzą sobie z RGBa. Dlatego powyżej zadeklarowaliśmy kolor, który można zastosować na wszelki wypadek, gdyby RGBa nie było obsługiwane.
Jak widać, rozmiary warstwy alfa są mniejsze od rozmiarów obrazka. Przytoczony tu kod należy przystosować do własnej grafiki.
Następnie w HTML-u umieszczamy przykładowo taki kod:
<div class="obrazek">
<img src="ptaszek.jpg">
<div class="alfa">Ptaszki</div>
</div>
Powinniśmy uzyskać następujący efekt:

Jak widać, napis nie jest przezroczysty.
Metoda ta działa z Firefoksem 3, Google Chrome, Operą 10 i Safari 3.
Polecamy
Reklama
Komentarze
Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka
(słowa muszą być rozdzielone spacją).
W treści komentarza można używać języka formatowania BBcode.
Popularne
Pobierałeś pirackie pliki? Uważaj! Kontrole antypirackie w domach użytkowników to codzienność
36
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1455
Debata w sprawie ACTA: internauci spodziewali się chyba czegoś innego
14
Wynalazca WWW przed sądem: walczy tam o wolny dostęp do webowych technologii dla każdego
8
PHP 5.3.9 nie pozwoli hakerom zawiesić serwera. Pozwoli za to przejąć nad nim kontrolę
28
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
15
Internet w EU bez Facebooka i Google? Firmy nie mają wyboru: albo się dostosują, albo…
10
MSWiA zamówiło narzędzia do „złamania” Tora i podsłuchiwania internautów. Czy złamało przy tym prawo?
89
[Aktualizacja] Facebook zablokował Demotywatory.pl. W czym zawiniły?
36
FBI zamknęło Megaupload. Anonimowi dali się sprowokować. Teraz ich akcja uzasadni potrzebę SOPA?
17
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1455
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
15
„Donald matole, twój rząd dopadną kibole” – hakerska elita przyłącza się do walki z ACTA
23
Klamka jeszcze nie zapadła. Minister prosi Donalda Tuska, by wstrzymał się z podpisywaniem ACTA
24
Społeczność
WebDev @slawek22
OK. Rozumiem i wiem, że koncerny stosują regionalizacje i nie...
slawek22 >są inne rodzime serwisy VOD z legalny filmami
WebDev no fakt... jeśli...
WebDev @BLACK BEAR®
"bo denerwujesz mi ludzi na forum” lool
Minister Zdrowia...
tobas ClickShop bardzo wolno działa!!!
Nie dajcie się nabrać na wygląd i...
blackbear @WebDev, widzę że muszę Ci rozjaśnić we łbie. Czytaj więc i nie pisz...
Jay Brak obsługi aplikacji x86/x64 ze zwykłych desktopów to kręcenie na siebie...
WebDev @slawek22
Tak jak ze wszystkim tak i z prawem własności można przesadzić...
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
- Marek: problem z menu (2)
- Marek: Własne checkboxy w HTML,CSS (1)
Polecane książki
Praca
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |









#1 Kornel 2009-02-06 18:16:42 0
IP: 79.189.92.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
#2 eimi® 2009-02-06 19:17:50 0
IP: 88.156.95.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008121621 Ubuntu/8.04 (hardy) Firefox/3.0.5 GTB5
#3 Kornel 2009-02-06 20:25:13 0
IP: 79.189.92.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
#4 eimi® 2009-02-06 21:03:35 0
IP: 88.156.95.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008121621 Ubuntu/8.04 (hardy) Firefox/3.0.5 GTB5
#5 pako® 2009-02-07 09:08:16 0
IP: 213.156.117.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008122011 Iceweasel/3.0.5 (Debian-3.0.5-1)
#6 pako® 2009-02-07 09:10:27 0
IP: 213.156.117.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008122011 Iceweasel/3.0.5 (Debian-3.0.5-1)
#7 castor 2009-02-07 09:15:55 0
IP: 81.190.40.[...] Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; pl-pl) AppleWebKit/525.18 (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1
#8 castor 2009-02-07 09:16:48 0
IP: 81.190.40.[...] Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; pl-pl) AppleWebKit/525.18 (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1
#9 eimi ibn eimi 2009-02-07 09:37:07 0
IP: 88.156.95.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008121621 Ubuntu/8.04 (hardy) Firefox/3.0.5 GTB5
#10 pako® 2009-02-07 16:41:01 0
IP: 213.156.117.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008122011 Iceweasel/3.0.5 (Debian-3.0.5-1)
#11 equw 2009-02-08 01:38:48 0
IP: 86.63.144.[...] Opera/9.63 (Windows NT 6.0; U; pl) Presto/2.1.1
#12 Marek® 2009-02-16 21:57:00 0
IP: 83.14.160.[...] Opera/9.63 (Windows NT 5.1; U; pl) Presto/2.1.1
#13 pako® 2009-02-17 19:02:12 0
IP: 213.156.117.[...] Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5) Gecko/2008122011 Iceweasel/3.0.5 (Debian-3.0.5-1)
#14 Kylo.el 2009-02-18 14:02:26 0
IP: 83.28.251.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 (.NET CLR 3.5.30729) Ubiquity/0.1.4
#15 WebJoker 2009-02-19 18:09:43 0
IP: 82.210.190.[...] Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 Ubiquity/0.1.5