0

我使用来维护我的网站的布局。该网站的主页在 Opera 12.14 中与其他页面完美呈现。但是,某些页面(例如此页面)仅在 Opera 上的右侧有额外的空白区域。我试图检查空白额外空间中的元素,它提到了 html 标签?!我将 html 源代码复制到我的编辑器(netbeans)中,以查看是否缺少一些结束标记,但我没有找到它们。我的网站是rtl。什么应该导致这个问题?

4

1 回答 1

0

我在 Opera 中找到了这个布局问题的原因。这是由于。仅在 Opera 中,它会在结束 body 标记之前生成一个 div 标记,如下所示:

<div id="sm2-container" class="movieContainer sm2_debug" style="position: absolute; width: 6px; height: 6px; top: -9999px; left: 9999px;">
  <embed name="sm2movie" id="sm2movie" src="/quran/themed/slate/js/swf/soundmanager2_flash9_debug.swf" quality="high" allowscriptaccess="always" bgcolor="#ffffff" pluginspage="www.macromedia.com/go/getflashplayer" title="JS/Flash audio component (SoundManager 2)" type="application/x-shockwave-flash" haspriority="true">
</div>

由于我不知道如何让 Soundmanager2 停止生成这个 div,我决定使用 CSS 解决它,如下所示:

#sm2-container .movieContainer .sm2_debug{ 
 display: none; 
}

然而,上面的 CSS 解决方案修复了布局问题,但它导致 Soundmanager 停止在 Opera 上工作!到目前为止,我认为这是我关于布局的问题的答案。

最终解决方案:

来自官方 SM2 论坛上的这个答案。我必须制作一个 id 为 sm2_container 的 div 并将其设置为如下样式,然后将其放置在源中我想要的任何位置:

<div id="sm2-container" style="width:1px; height:1px; visibility: hidden" class="movieContainer sm2_debug" >
  
</div>

真正有用的样式是可见性隐藏,因为它只是一个白色背景的 swf 正方形,我想隐藏它。

于 2013-04-04T23:24:30.630 回答