Silverlight vs overflow =“hidden”

时间:2009-08-04 09:19:20

标签: css silverlight firefox hidden

我在页面上有一个silverlight控件,我需要将body的样式更改为overflow =“hidden”,然后将样式恢复为overflow =“auto”

每当溢出样式属性发生更改时,silverlight控件将重新启动,丢失所有数据,并且正在进行操作!!!!

发生在firefox NOT safari中。尚未尝试IE。

2 个答案:

答案 0 :(得分:1)

我听说过Firefox中的情况(事实上,我已经点击了它们),Silverlight插件被Firefox有效重启。我的理解是,解决这种情况的工作很少。

你能考虑一个不同的设计吗?也许我们可以帮助您找到一种解决方法,帮助您维护正在经历的内容,而不会出现插件问题。

答案 1 :(得分:0)

这是Silverlight中的一个已知错误,实际上文档就此说了这个:

  

由于浏览器的不同,所以   Silverlight插件不支持   层叠样式表   (CSS)对象的溢出属性   元素或父容器   元素,例如div元素。

据我所知,只有只在Mac和Windows上使用Firefox发生。其他浏览器似乎没有这个问题。

有两个笨重的解决方法:只有在用户操作更改overflow属性时才会发生这种情况,例如使用:hover伪类。当您“强制”浏览器隐藏滚动条时,Silverlight对象不会重新启动。例如,当您将div的height设置为非常大的高度时,滚动条会消失,但对象不会重新启动。

当您需要滚动条时,另一种解决方法是使用自定义Javascript解决方案。我推荐优秀的jScrollPane jQuery plugin

我在我的blog顺便说一句其他一些Silverlight怪癖(包括这个)的博客。