這次帶給大家在HTML中怎樣讓Flash不遮擋div元素,在HTML中讓Flash不遮擋div元素的注意事項有哪些,下面就是實戰案例,一起來看一下。
今天在寫一個flash廣告代碼的時候,因為flash自帶的鏈接,容易被當成彈出廣告,所以做了一個div層放到flash上面,這樣鏈接都是a觸發的不會被攔截,但發現flash一直處於div層上面,原來flash要加個參數才可以。
讓flash置於DIV層之下的方法,讓flash不擋住飄浮層或下拉選單,讓Flash不檔住浮動物件或層的關鍵參數:wmode=opaque。
方法如下:
針對IE 在內加上參數
針對FF 在內加上參數wmode="opaque"
腳本之家使用代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>22cn</title> <style type="text/css"> <!-- body { position:relative; z-index:0; margin:0; padding:0 } body,td,th { color: #333333; } *{margin:0; padding:0} img{ border:0} #jb51{ position:relative; width:300px; height:250px} #div1 { position:absolute; left:0; top:0; width:300px; height:250px; z-index:-1 } #div2 { position:absolute; left:0; top:0; width:300px; height:250px; z-index:99999; } --> </style></head> <body> <div id="jb51"> <div id="div1"> <script type="text/javascript"> document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="300" height="250">'); document.write('<param name="movie" value="http://img.jb51.net/image/22cn_jb51net.swf" />'); document.write('<param name="quality" value="high" /><param name="wmode" value="opaque" />'); document.write('<embed src="http://img.jb51.net/image/22cn_jb51net.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="300" height="250" wmode="opaque"></embed>'); document.write('</object>'); </script> </div> <div id="div2"> <a href="http://i.am.cn/?s=jb51pic2" target="_blank"><img src="http://img.jb51.net/image/touming.png" width="300" height="250"/></a> </div> </div> </body> </html>
標準的的Flash插入
設定高度與寬度:
#width="400" height="400"
設定路徑:
data="style/flash/001.swf" 与 value="style/flash/001.swf"
替代文字或替代圖片:
<a href="" title=""><img src="" alt="" /></a> 也可以不要这段 --> <object type="application/x-shockwave-flash" data="style/flash/001.swf" width="400" height="400"> <param name="movie" value="style/flash/001.swf" /> <a href="style/flash/001.swf"><img src="style/img/001.jpg" alt="Flash动画" /></a> </object>
不會遮住層的Flash
<!-- 不会遮住层的Flash 让Flash不档住浮动对象或层的关键属性: <param name="wmode" value="opaque" /> <embed wmode="opaque"></embed> --> <object type="application/x-shockwave-flash" data="style/flash/001.swf" width="400" height="400"> <param name="movie" value="style/flash/001.swf" /> <param name="wmode" value="opaque" /> <embed wmode="opaque"></embed> <a href="style/flash/001.swf"><img src="style/img/001.jpg" alt="Flash动画" /></a> </object>
透明的Flash
<!-- 透明的Flash 让Flash透明的关键属性: <param name="wmode" value="transparent"> --> <object type="application/x-shockwave-flash" data="style/flash/001.swf" width="400" height="400"> <param name="movie" value="style/flash/001.swf" /> <param name="wmode" value="transparent"> <a href="style/flash/001.swf"><img src="style/img/001.jpg" alt="Flash动画" /></a> </object>
wmode 屬性/參數值Window | Opaque | Transparent
模板變數:$WM,(可選)允許使用Internet Explorer 4.0 中的透明Flash 內容、絕對定位和分層顯示功能。此標記/屬性僅在具有 Flash Player ActiveX 控制項的 Windows 中有效。
"Window"在 Web 頁上使用影片自己的矩形視窗來播放應用程式。 "Window"表示此 Flash 應用程式與 HTML 層沒有任何交互,並且始終位於最頂層。
"Opaque" 讓應用程式隱藏頁面上位於它後面的所有內容。
"Transparent"使 HTML 頁的背景可以透過應用程式的所有透明部分顯示出來,並且可能會降低動畫效能。
"Opaque windowless"和"Transparent windowless"都可與 HTML 層交互,從而允許 SWF 檔案上方的層遮蔽應用程式。這兩種選項之間的差異在於"Transparent"允許透明,因此,如果SWF 檔案的某一部分是透明的,則SWF 檔案下方的HTML 層可以透過該部分顯示出來,而"opaque"則不會顯示。
如果忽略此屬性,預設值為 Window。僅適用於 object。
我相信看了這些案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
相關閱讀:
###a標籤href屬性與onclick事件應該如何使用#########以上是在HTML中怎樣讓Flash不遮擋div元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!