1

我想在 html 页面上嵌入 swf,例如浮动视频观看面板。我已经有一个 swf 文件,它会根据浏览器大小自动调整其大小,并且 swf 文件是部分透明的。我以为我可以添加一个 div 标签,使位置绝对并更改 z-index 更大,但这不起作用,因为 swf 只是替换了页面上的所有内容。

这就是我所做的

<script>
      swfobject.embedSWF("swf/float.swf", "header", "100%", "100%", "9.0.0");
</script>

<body bgcolor="#000000">
      <div id="header"></div>
      <div id="shell">
          things in my html
      </div>
</body>

#header {
    position:absolute;
    z-index:100;

}

任何的想法?谢谢。

4

2 回答 2

5

一旦你的尺寸正常工作,你需要将wmode 设置透明以便能够看到闪光灯后面的内容,如果你不这样做,它的背景将是不透明的。

这是来自swfobject docs的快速复制粘贴,但它应该明白这一点:

<script type="text/javascript">

var flashvars = {};
var params = {wmode : "transparent"};
var attributes = {};

swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0","expressInstall.swf", flashvars, params, attributes);

</script>
于 2008-11-18T23:31:35.650 回答
0

我认为问题在于 CSS 不能很好地处理<object />标签。将swfobject.embedSWF变成<div id="header"></div>一个<object />带有一堆可能影响 CSS 的属性的标签。如果您在标题 DIV 周围创建一个包装器 DIV 并将 CSS 应用于包装器 DIV,那么一切都会更好。您还需要在 CSS 中添加 100% 的宽度和高度。这是修改后的来源:

<script>
    swfobject.embedSWF("swf/float.swf", "header", "100%", "100%", "9.0.0");
</script>

<body bgcolor="#000000">
    <div id="wrapper">
        <div id="header"></div>
        </div>
    <div id="shell">
        things in my html
    </div>
</body>

#wrapper {
    position:absolute;
    z-index:100;
    width:100%;
    height:100%;
}
于 2008-11-18T22:14:42.717 回答