2009-05-20 13 views
71

使用<object><embed>標記嵌入Flash對象時,存在名爲wmode的屬性。看起來大多數時候,wmode="transparent"wmode="opaque"相同,因爲Flash實際上沒有任何透明顏色,因此要顯示底部的HTML元素。因此,opaque應該比transparent更快,因爲它需要較少的透明度處理,但大部分時間我都看到嵌入了transparent而不是opaque的Flash對象。爲網頁上的嵌入對象使用wmode =「transparent」,「opaque」或「window」之間的差異

opaque是需要的,以便其他HTML元素不會被Flash對象覆蓋(例如彈出一個額外子菜單的菜單項不會被Flash對象覆蓋)。

順便提一句,有wmodeopaque,transparentwindow的正式文件嗎?我只能找到描述它的博客,而不是正式的文檔。謝謝。

+0

由於用於說明WMODE =「不透明」,使其他HTML元素將不被掩蓋。嵌入YouTube視頻讓我對此感到瘋狂。YouTube的默認嵌入代碼不包含wmode,即使它們具有較高的z-index值,它也與其他div重疊。謝謝。 – raddevus 2011-04-05 17:41:46

回答

34

這裏是不同的閃光9的wmode設置一些薄弱adobe documentation

wmode透明的注意事項在這裏adobe bug trac

而新的閃存10,是兩個新的wmodes:gpu和直接。請參閱Adobe Knowledge Base about wmode

+6

太棒了,這裏是文檔的引用:wmode - 可能的值:窗口,不透明,透明。設置Flash電影的Window Mode屬性以實現瀏覽器中的透明度,分層和定位。 窗口 - 電影在網頁上的自己的矩形窗口中播放。不透明 - 電影隱藏了頁面背後的所有內容。 透明 - HTML頁面的背景通過電影的所有透明部分顯示,這可能會降低動畫性能。 – 2010-06-03 06:55:39

20

不透明會導致更少的系統壓力,因爲'透明'仍然會嘗試應用阿爾法。你看到透明的原因是因爲大多數web作者都不注意細節(即只複製粘貼他們找到的一些嵌入代碼)。

順便說一句,你是正確的關於它是無證的。我見過的最好的博客是一個聲稱有與Macromedia開發者就交談的人。不幸的是我找不到鏈接。

編輯:我認爲這是這一個:http://www.communitymx.com/content/article.cfm?cid=e5141

7

另外,與wmode=opaque和IE瀏覽器,Flash獲取鍵盤事件,但也HTML頁面接收它們,所以它不能用於像嵌入Flash遊戲的東西。非常討厭

+1

這不回答問題。 – kapa 2011-05-03 09:16:03

2

有一件奇怪的事情是,在Chrome + Firefox中,MOUSE_LEAVE事件不會分派給OPAQUETRANSPARENT

WINDOW它工作正常。那一個花了一些時間找出來! GRR ...

(注:jediericb提到this bug - 這是相似的,但並沒有提及MOUSE_LEAVE

相關問題