Yazı tipini etkilemeden opaklık kullanarak liste menüsünün arka planının kaybolmasını istiyorum. CSS3 ile mümkün mü?
Yanıtlar:
artık rgba'yı aşağıdaki gibi CSS özelliklerinde kullanabilirsiniz :
.class {
background: rgba(0,0,0,0.5);
}
0,5 şeffaflıktır , değerleri tasarımınıza göre değiştirin.
Canlı demo http://jsfiddle.net/EeAaB/
daha fazla bilgi http://css-tricks.com/rgba-browser-support/
rgba('black', 0.5)
mı?
evet, bu mümkün. arka plan renginiz için sadece rgba-sözdizimini kullanın .
.menue{
background-color: rgba(255, 0, 0, 0.5); //semi-transparent red
}
İşte CSS adlı renkler kullanan bir örnek sınıf:
.semi-transparent {
background: yellow;
opacity: 0.25;
}
Bu,% 25 opak (renkli) ve% 75 şeffaf bir arka plan ekler.
CAVEAT
Maalesef, opaklık bağlı olduğu tüm öğeyi etkileyecektir .
Dolayısıyla, bu öğede metin varsa, metni de% 25 opaklığa ayarlayacaktır. :-(
Bunu aşmanın yolu, rgba
veyahsla
, istediğiniz arka plan "renginin" bir parçası olarak saydamlığı belirtmek yöntemlerini . Bu, öğenizdeki diğer öğelerin şeffaflığından bağımsız olarak arka plan şeffaflığını belirlemenize olanak tanır.
Mavi bir arka planı diğer unsurları etkilemeden% 75 şeffaflığa ayarlamanın 3 yolu:
background: rgba(0%, 0%, 100%, 0.75)
background: rgba(0, 0, 255, 0.75)
background: hsla(240, 100%, 50%, 0.75)
Bu durumda background-color:rgba(0,0,0,0.5);
en iyi yoldur. Örneğin:background-color:rgba(0,0,0,opacity option);
Bunu başarmak için, background-color
elemanın üzerinde değişiklik yapmanız gerekir .
(Yarı) şeffaf bir renk oluşturmanın yolları:
CSS renk adı transparent
tamamen şeffaf bir renk oluşturur.
Kullanım:
.transparent{
background-color: transparent;
}
Alfa kanalını (opaklık) ve işlevlerine eklemenizi sağlayan rgba
veya hsla
renk işlevlerini kullanma . Alfa değerleri 0 - 1 arasındadır.rgb
hsl
Kullanım:
.semi-transparent-yellow{
background-color: rgba(255, 255, 0, 0.5);
}
.transparent{
background-color: hsla(0, 0%, 0%, 0);
}
Daha önce bahsedilen çözümlerin yanı sıra, HEX formatını alfa değeri ( #RRGGBBAA
veya #RGBA
notasyon ) ile de kullanabilirsiniz .
Bu oldukça yenidir (CSS Renk Modülü Seviye 4'te bulunur), ancak daha büyük tarayıcılarda zaten uygulanmıştır (üzgünüm, IE yok).
Bu, alfa kanalını (opaklık) da onaltılık bir değer olarak değerlendirdiğinden, 0 - 255 ( FF
) aralığında olmasını sağladığından, diğer çözümlerden farklıdır .
Kullanım:
.semi-transparent-yellow{
background-color: #FFFF0080;
}
.transparent{
background-color: #0000;
}
Bunları da deneyebilirsiniz:
transparent
:rgba()
:#RRGGBBAA
:innerHTML =
(hey, en azından document.write
2012'de yaptıkları ve uyarılardan daha iyidir , ancak yine de jQuery öğreticisinin dışında, ilgili yöntemleri her bölüm için bir tane listeledikleri eğitim parçası dışında DOM manipülasyonu yok ve o zaman bile sadece seçim - ve evet, liste yapıyorlar document.write
). XHR öğreticileri, onLoad yerine readyStateChange kullanır (IE7'den beri desteklenir). Oh ve JSON'daki işlevler için geçici çözümü? Onları daha sonra değerlendirilmek üzere sıkıştırın
Evet, sadece düz metin yapabilirsiniz
.someDive{
background:transparent
}