flash在网页居中的问题,ie9、ie8、ie7可以居中,ie6无法居中
flash在网页居中的问题,ie9、ie8、ie7可以居中,ie6无法居中
网页的代码
- HTML code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN" xml:lang="zh-CN"> <head> <title>XXXXXX</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css" media="screen"> html, body { height:100%; background-color: #000000;} body { margin:0; padding:0; overflow:hidden; } #flashContent { width:100%; height:100%; position:fixed; left:50%; margin-left:-320px; top:50%; margin-top:-240px; } </style> </head> <body> <div id="flashContent"> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="480" id="browser_client_zj" align="middle"> <param name="movie" value="browser_client_zj.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> <param name="play" value="true" /> <param name="loop" value="true" /> <param name="wmode" value="window" /> <param name="scale" value="showall" /> <param name="menu" value="true" /> <param name="devicefont" value="false" /> <param name="salign" value="" /> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="true" /> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="browser_client_zj.swf" width="640" height="480"> <param name="movie" value="browser_client_zj.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> <param name="play" value="true" /> <param name="loop" value="true" /> <param name="wmode" value="window" /> <param name="scale" value="showall" /> <param name="menu" value="true" /> <param name="devicefont" value="false" /> <param name="salign" value="" /> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="true" /> <!--<![endif]--> <a href="http://www.adobe.com/go/getflash"> <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="获得 Adobe Flash Player" /> </a> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </div> </body></html>居中部分的代码为
- HTML code
#flashContent { width:100%; height:100%; position:fixed; left:50%; margin-left:-320px; top:50%; margin-top:-240px; }
- HTML code
position:fixed; left:50%; margin-left:-320px; top:50%; margin-top:-240px;
在ie7到ie9都生效了,但ie6不生效,flash跑到页面的左边上边
flash大小为640*480,双击全屏,esc退出,代码(as2)如下:
- Java code
//双击全屏listenerDoubleClick = new Object();listenerDoubleClick.onMouseDown = function() { clickTime = getTimer(); if ( clickTime - lastClickTime <= 300 ) { //trace("双击了鼠标"); Stage["displayState"] = "fullScreen"; } lastClickTime = clickTime;};Mouse.addListener(listenerDoubleClick);[解决办法]
#flashContent的样式里加个text-align:center
[解决办法]
其实你想居中的话,我觉得你可以在#flashContent外面再套一个DIV,规定宽度为640(跟#flashContent的宽度一样),然后margin:0 auto;这样DIV就居中了。#flashContent放在一个居中的DIV中,自然也是居中的了。
[解决办法]
老兄既然已经使用了 负margin进行倒拉, 为什么不指定和高呢?
我怀疑是不是fixed惹得祸呢, IE6本身对 fixed 支持不好, 先用用 absolute, 看看是不是中间了, 如果解决了问题, 想一直保证在中央位置就简单了, 可以考虑用JS在 scroll事件中动态获取 scrolltop 值, 加到top值里面