1
A
回答
0
正如我所記得的,如果你設置背景顏色和背景圖像,那對於透明的PNGs來說不起作用(在透明度上你會看到背景顏色)。 特的解決方案是使用一種特殊的CSS類:
.trans_back { background:red }
DIV#trans_png { background:url(reddot.png); position:absolute; left:-9px; }
然後使腳本:
$().ready(function(){
$('#trans_png').load(function(){
$('.tans_back').css('background',$(this).css('background'));
});
});
DIV#trans_png是用來檢查是否加載圖像,你可以用你喜歡的方式去做,我更喜歡最簡單的沒有腳本。
1
你應該能夠提供一個CSS背景圖像和背景顏色。如果圖像被禁用,顏色仍應顯示。
0
1
我想到的另一個解決方案是,您可以默認設置純色背景,然後使用JavaScript加載圖像並應用透明度。如果有人將JS禁用或圖像下載失敗,那麼您將擁有默認的純色背景。
0
這是基於思想家的帖子,但我發現它沒有工作。我發現$('#trans_png').load
沒有觸發(jquery 1.9.1,firefox) - 我不得不使用圖像的src的加載事件,即$('#logo img').attr('src', 'images/layout/logo.png').load(function() {
。任何圖像都可以。
我也發現只是複製背景不起作用,我不得不明確清除顏色並添加圖像url。
我也不得不將此變化的幾個要素(子菜單ul
S),所以增加了負載函數內的循環:
$('#logo img').attr('src', 'images/layout/logo.png').load(function() {
$("ul.MenuBarHorizontal ul").each(function() {
$(this).css('background-color','none').css('background','none').css('background', $('#menu-trns-bg').css('background-image'));
});
});
這本質上是思想者的回答,固定的,但我不能」這可以理解爲一個評論。
只是爲了澄清,默認情況下,ULs有background-color: white;
,並且div位於屏幕外div#menu-trns-bg {position: absolute;left:-3000px;background-image:url(../images/layout/body-bg.png);}
我在Spry菜單上使用了此選項。
相關問題
- 1. CSS透明背景圖片
- 2. 在CSS中有一個透明背景RGBA背景後備箱
- 3. wxWidgets透明背景圖片?
- 4. css背景透明
- 5. 背景圖片的透明度
- 6. css透明圖像的背景顏色
- 7. css背景透明度?
- 8. CSS背景透明度
- 9. Qt css背景半透明
- 10. 透明背景圖片鏈接
- 11. PHP圖片不能讓背景透明
- 12. 顯示圖片框與透明背景
- 13. 透明或不透明的背景與css中的圖像
- 14. 背景圖像,但與不透明css
- 15. HTML/CSS/jQuery:背景圖像不透明
- 16. CSS:半透明背景和圖像
- 17. 改變Blogger的背景透明度圖片不是透明
- 18. 我可以動畫CSS背景圖片的不透明度嗎?
- 19. 我如何設置HTML和CSS透明的背景圖片?
- 20. css box陰影+透明背景圖片=直觀的細分
- 21. 背景圖片CSS中的不透明度
- 22. 透明背景透明圖像問題
- 23. CSS3背景不透明與背景圖片
- 24. 使div元素背景對背景圖像透明CSS
- 25. 背景顏色透明背景圖像在css
- 26. 字體背後的透明背景
- 27. 如何使用css使背景透明?
- 28. 如何從透明覆蓋片段中禁用背景活動
- 29. 透明背景
- 30. 圖像背景透明GIMP
這似乎在弱連接上引入了一個漏洞。如果CSS替換Javascript沒有完成,偶爾會看到徽標圖片無法加載。我已經嘗試了預加載背景圖片,並從javascript例程中返回true,但是有些事情中斷了。就個人而言,這是不值得的風險,所以我已經從我的網站刪除了這段代碼。 – Chris 2013-10-09 15:08:27