使用 CSS 定位 Flash 内容
Posted
技术标签:
【中文标题】使用 CSS 定位 Flash 内容【英文标题】:Positioning flash content using CSS 【发布时间】:2010-09-15 11:12:00 【问题描述】:我有一个生成的 html 页面,其中包含 Flash 内容。我正在尝试重新定位 Flash 内容并使其“绝对”。我试图用 div 标签包装对象标签,但无济于事。谁能告诉我该怎么做?删除生成的定位属性不起作用。
请看下面相关代码(不是很整洁,不过是这样生成的,大部分不相关的代码我都去掉了):
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>* welcome *</title>
<script language="javascript">AC_FL_RunContent = 0;</script>
<script src="AC_RunActiveContent.js" language="javascript"></script>
</head>
<body bgcolor="#000000">
<script language="javascript">
if (AC_FL_RunContent == 0)
alert("This page requires AC_RunActiveContent.js.");
else
AC_FL_RunContent(
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
'width', '430',
'height', '200',
'src', 'bar',
'quality', 'high',
'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
'align', 'right',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'transparent',
'devicefont', 'false',
'id', 'bar',
'bgcolor', '#000000',
'name', 'bar',
'menu', 'true',
'allowFullScreen', 'false',
'allowScriptAccess','sameDomain',
'movie', 'bar',
'salign', ''
); //end AC code
</script>
<noscript>
<div style = "position: absolute">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="bar" align="right">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="bar.swf" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><param name="bgcolor" value="#000000" />
</object>
</div>
</noscript>
提前致谢!
【问题讨论】:
【参考方案1】:由于您的 div 包含在 noscript 中,因此只有在关闭 javascript 时才会显示,您确定这是您想要的行为吗?
【讨论】:
【参考方案2】:您应该将实际创建对象的 JS 脚本放在您的 div 中,而不是在它之前。
【讨论】:
【参考方案3】:@Fuzzy76 & @epeleg.blogspot.com 是对的
@pypmanetjies -> 你的代码必须是这样的(缩短):
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>* welcome *</title>
<script language="javascript">AC_FL_RunContent = 0;</script>
<script src="AC_RunActiveContent.js" language="javascript"></script>
</head>
<body bgcolor="#000000">
<div style = "position: absolute">
<script language="javascript">
if (AC_FL_RunContent == 0)
alert("This page requires AC_RunActiveContent.js.");
else
AC_FL_RunContent(
...
); //end AC code
</script>
<noscript>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="bar" align="right">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="bar.swf" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><param name="bgcolor" value="#000000" />
</object>
</noscript>
</div>
【讨论】:
【参考方案4】:您可能还需要设置宽度和高度。
【讨论】:
以上是关于使用 CSS 定位 Flash 内容的主要内容,如果未能解决你的问题,请参考以下文章