<object>
および<embed>
タグを使用してFlashオブジェクトを埋め込む場合、wmode
という属性があります。ほとんどの場合、wmode="transparent"
はwmode="opaque"
と同じですが、実際にはFlashには透明な色がなく、HTMLの下の要素が表示されます。その結果、opaque
は、transparent
よりも高速である必要がありますが、ほとんどの場合、transparent
の代わりにopaque
が埋め込まれたFlashオブジェクトが表示されます。
opaque
は、他のHTML要素がFlashオブジェクトで覆われないようにするために必要です(追加のサブメニューをポップアップするメニュー項目がFlashオブジェクトで覆われないようにするため)。
ところで、wmode
のopaque
、transparent
、およびwindow
の正式なドキュメントはありますか?正式なドキュメントではなく、それを説明するブログのみを見つけることができました。ありがとう。
ここにいくつかの弱点があります Adobeドキュメント 異なるFlash 9 wmode設定で。
Wmode transparentに関する注意事項は、 Adobe bug trac にあります。
また、Flash 10では、gpuとdirectの2つの新しいwmodeが追加されました。 wmodeについてのAdobe Knowledge Base を参照してください。
「透明」はまだアルファを適用しようとするので、不透明はシステムの負担を軽減します。代わりに透明が使用されるのは、ほとんどのWeb作成者が詳細に注意を払っていないためです(つまり、見つかった埋め込みコードをコピーアンドペーストするだけです)。
ところで、あなたはそれが文書化されていないことについて正しいです。私が今まで見た中で最高のものは、それについてMacromedia開発者に話したと主張する男によるブログです。残念ながら、リンクが見つかりません。
EDIT:これはこれだと思う: http://www.communitymx.com/content/article.cfm?cid = e5141
また、wmode=opaque
およびIEを使用すると、Flashはキーボードイベントを取得しますが、htmlページもそれらを受信するため、Flashゲームの埋め込みなどには使用できません。とてもうるさい
Adobe KBには、「wmode」や、プレゼンテーションとパフォーマンスへの影響に関するその他の属性に関するかなり優れた記事があります。
奇妙なことの1つは、Chrome + Firefoxでは、OPAQUE
およびTRANSPARENT
に対してMOUSE_LEAVEイベントがディスパッチされないことです。
WINDOW
で問題なく動作します。それを見つけるのに時間がかかりました! grr ...
(注:jediericbが言及した このバグ -これは似ていますが、MOUSE_LEAVE
は言及していません)