2010-12-11 45 views
2

當你有一個透明的div並且你生成了一個點擊(例如),點擊就直接進入下面的元素。這種行爲在其他現代瀏覽器中不存在,我確信沒有任何W3C推薦。最後,它弄亂了我的設計。有什麼辦法可以解決這個問題嗎?澄清 - 透明,沒有背景顏色或透明背景顏色:透明;Internet Explorer 8事件通過透明父母進行下載

另一個解釋 - 我的意思是,瀏覽器的行爲就像透明元素完全不存在 - 忽略它的事件處理程序並觸發其他事件處理程序,這些事件處理程序不是他的父母,而應該被隱藏它。

我解決它由背景顏色設置爲非trasnparent和使用

-MS-濾波器: 「的progid:DXImageTransform.Microsoft.Alpha(不透明度= 40)」;

實現透明化,而不是老

-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#66C6DEA2,endColorstr=#66C6DEA2)"; 

感謝大家,幫助!

+0

上次我檢查Opera做了完全相同的事情。 – 2010-12-11 13:30:42

+0

透明如何? PNG?不透明? RGBA? – 2010-12-11 13:32:45

+0

除非您採取措施阻止它,否則點擊始終會通過DOM冒泡。你能告訴我們一些代碼嗎? – tvanfosson 2010-12-11 13:34:13

回答

4

它可以通過給元素背景色和零或幾乎爲零的不透明度來固定嗎? 當你想給文件輸入元素一個自定義外觀時使用這個黑客(http://www.quirksmode.org/dom/inputfile.html

+1

IE不支持RGBA。我使用了-ms-filter:「progid:DXImageTransform.Microsoft.gradient來模擬它,但不幸的是,過濾器並不算作背景色,從視覺上看,這個元素並不透明,但在功能上它是 – 2010-12-11 14:05:33

+0

我讀過黑客,是不透明的去div工作嗎?我雖然只是爲了圖像? – 2010-12-11 14:15:01

+0

不透明度可以應用於除表格行和表格外的任何元素。這可以使用Quirksmode.org上的頁面中的過濾器來完成。 – 2010-12-11 16:40:49

相關問題