1.embed是非法的 標籤是Netscape的私有標籤,雖然標籤應用廣泛存在,但是從HTML3.2,HTML4.0到XHTML1.0,W3C都沒有收錄這個標籤。使用標籤的頁面將無法通過W3C校驗。 2.應該用object W3C推薦的是標籤。甚至在XHTML2中,都要被取代。用方法插入flash的程式碼是: if (navegiator . mimeTypes && navigator . mimeTypes["application/x- shockwave-flash"] { document . write(' 這是目前比較好的解決方法。你一定要插flash,就用js呼叫。這種方法可以欺騙W3C的校驗程序,使頁面通過校驗。但僅僅是"欺騙",而不是真符合標準。 macromedia是怎麼做的呢?看到這句代碼: 它採用了一個折中二選一的辦法: (1).首先javascript來判斷你的瀏覽器版本和flash player的版本; (2).根據版本的不同在背景動態的產生HTML程式碼。 簡單說就是預設採用方法,如果瀏覽器不能處理object的MIME類型「 application/x-shockwave-flash」,它就插入子元素。說穿了,這和用js隱藏方法類似,也是一種「欺騙」的辦法,但這是目前能夠做到的最符合標準的,比較完美的做法了。 要真正拋棄,只能等IE瀏覽器對更好的支援才行,也許要等到Longhorn出來了。