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, rgbaveyahsla , 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-colorelemanı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 rgbaveya hslarenk işlevlerini kullanma . Alfa değerleri 0 - 1 arasındadır.rgbhsl
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 ( #RRGGBBAAveya #RGBAnotasyon ) 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.write2012'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
}