如何使用CSS隐藏Flash对象的特定部分?

时间:2010-11-18 21:21:36

标签: css properties

我将Soundclick的flash音乐播放器嵌入我的音乐网站。我有一个固定的空间放置玩家。问题是网站提供的玩家太大了。 Flash播放器的底部部分是我需要显示的全部内容。有没有办法使用溢出隐藏这个:隐藏;方法

到目前为止我尝试过:

我将嵌入代码放入div容器并使用“overflow:hidden;”方法,然后设置固定的宽度和高度。它部分工作,但只显示上半部分。这是无用的,因为下半部分是播放列表和按钮所在的位置。

<img style="visibility:hidden;width:0px;height:0px;" border=0 width=0 height=0 src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyOTAwNzA2MzY3MzkmcHQ9MTI5MDA3MTMwNTU4NyZwPTE1ODM2MSZkPSZnPTEmbz*5ZWIxNmMyMWQ5NmQ*YWJlODYy/YzdlMmM4NmM4NzMwNCZvZj*w.gif" /><div style="width:300px; height:450px; overflow:hidden;"><center><div><embed src="http://www.soundclick.com/widgets/creatives/mp3PlayerPremium.swf" width="300" height="430" flashvars="bandid=650303&ext=1" name="MP3PlayerPremium" type="application/x-shockwave-flash" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" /></div><div style="width: 300px; position: relative; top: -390px;"><a href="http://www.soundclick.com/bands/default.cfm?bandID=650303"><img src="http://www.soundclick.com/images/navigation/blank1x1.gif" border="0" width="300" height="250"></a> </div></center></div>

3 个答案:

答案 0 :(得分:2)

也许试试:

#flash_object_container {
  position:relative;
}
#flash_object {
  position:absolute;
  bottom:0;
}

这将从容器内部自下而上渲染flash对象,并结合溢出和明确的高度来修复它。

编辑(因为您提供了代码):

  <div style="width:300px; height:450px; overflow:hidden;">

可以更改为:

  <div style="width:300px; height:450px; overflow:hidden; **position:relative;**">

然后:

<div> <embed src="http://www.soundclick.com/widgets/creatives/mp3PlayerPremium.swf" width="300" height="430" flashvars="bandid=650303&ext=1" name="MP3PlayerPremium" type="application/x-shockwave-flash" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" /> </div>

变为:

<div **style="position:absolute; top:-YOUR_PX_VALUE;"**> <embed src="http://www.soundclick.com/widgets/creatives/mp3PlayerPremium.swf" width="300" height="430" flashvars="bandid=650303&ext=1" name="MP3PlayerPremium" type="application/x-shockwave-flash" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" /> </div>

答案 1 :(得分:2)

我已经多次使用你所描述的技术并且总是感到内疚。

但我不断发现最简单,最可靠的方法是将我的嵌入(从js,iframe中生成,无论小部件可能使用什么)包装在div中,然后我将约束宽度和高度。最后使用负边距将物体拉出视线。

#container {
   width:475px;
   height:65px;
   overflow:none;
}
#container embed {
   margin-top:-85px;
   margin-left:-145px;
}

我发现这是找到我的对象所在位置的最简单的方法,并且它有用,因为有时小工具有流体宽度(100%)并且使用左边和右边的负边距拉出边缘效果很好而且你不需要打扰一些界面开发人员可能会很挑剔的定位。

(我不断为facebook喜欢这样做 - 正如你在earmilk.com右上角所看到的那样)

答案 2 :(得分:0)

使用您尝试过的方法,尝试使用负顶部数字定位Flash对象。 (top="-50px;"或任何你需要的东西。