2011-04-07 30 views
9

Sana bir "veri" anahtar kelimeyi kullanarak CSS görüntüleri dahil ettiğimizi bazı sitelerde gördüm:CSS saydam arka plan görüntüsü

.stuff { 
    background: transparent url(data:image/gif;base64,SOMEWEIRDCODEHERE) repeat center top; 
} 

garip kod gibi base64 ecoded ip gibi bir :

R0lGODlhMwAxAIAAAAAAAP /// yH5BAAAAAAALAAAAAAzADEAAAK8jI + pBr0PowytzotTtbm/DTqQ6C3hGX ElcraA9jIr66ozVpM3nseUvYP1UEHF0FUUHkNJxhLZfEJNvol06tzwrgd LbXsFZYmSMPnHLB + zNJFbq15 + SOf50 + 6rG7lKOjwV1ibGdhHYRVYVJ9Wn k2HWtLdIW MSH9lfyODZoZTb4xdnpxQSEF9oyOWIqp6gaI9pI1Qo7BijbF ZkoaAtEeiiLeKn72xM7vMZofJy8zJys2UxsCT3kO229LH1tXAAAOw ==

hoş serin bak: D

ben böyle bir saydam 1x1 piksel GIF içerebilir nasıl merak ediyorum? Böyle bir resmin veri kodunu bilen var mı?

Küçük ve çok yaygın görüntüler için bunu yapmak iyi bir fikir midir? Tüm tarayıcılar bunu destekliyor mu?

sadece veri uri giden tarihiyle şey hakkında dönüştürmek The data URI scheme

kullanın Veri URI Mutfak denir

+1

Farkında olmadığım bir şey olmadıkça, bir CSS arka plan görüntüsü olarak bir spacer gif kullanmanın bir nedeni yoktur. –

+0

Merhaba Ben. Satır numaralarını burada imkansız hale getirmeye çalışıyorum: http://jsfiddle.net/rVwqR/ – Alex

+0

Sadece CSS ile seçimi engellemek; arka plan görüntüsü gerekli değil: http://stackoverflow.com/questions/826782/css-rule-to-disable-text-selection-highlighting/4407335#4407335 –

cevap

15

. Bağlantı: Bunu yaparken yanlış http://software.hixie.ch/utilities/cgi/data/data

+0

Bir görüntüyü dönüştürmeyi denedim ve boş bir sayfa açtım – Alex

+0

@Alex: Evet, çünkü görüntü saydam değil mi? Her iki durumda da, dönüştürdüğünüzde, URL'yi adres çubuğuna kopyalayın. 'Data' ile başlamalıdır. – Shaz

+0

Şimdi görüyorum ama üretilen kod çok büyük: http: // jsfiddle.net/rSzfd /: x – Alex

13
data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw== 

Hiçbir şey, bir HTTP gidiş-dönüş kaydedin. Sadece olumsuz IE'nin eski sürümlerinde çalışmıyor olmasıdır

+0

beyaz bir arka plan gösterir. bunu nasıl şeffaf yapabilirim? – Alex

+0

Üzgünüm, güncelleyin. –

+0

teşekkürler, bu işe yarıyor. – dsomnus

5

bu bir piksel

background-image: url(data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==); 
2

Eğer rgba() kullanarak daha iyi olabilir desteklemeniz gereken tarayıcılarda bağlı. Bu sorunun biraz yaşlı olduğunu biliyorum.

body { 
    background-color: rgba(0, 0, 0, .5); 
}