Asp.net IE7中没有用于溢出Silverlight控制的滚动条
autoI一直在开发嵌入ASP.NET web应用程序中的Silverlight 4应用程序。所述Silverlight控件的高度不同,在许多情况下,从屏幕底部垂直流动 这对于大多数浏览器(特别是IE 8、Chrome、Firefox)来说都没有问题,因为它们在HTML文档中添加了一个垂直滚动条。但是,IE7没有显示这些滚动条,因此无法查看整个Silverlight控件 我如何将其嵌入的代码片段:Asp.net IE7中没有用于溢出Silverlight控制的滚动条,asp.net,silverlight,internet-explorer,internet-explorer-7,Asp.net,Silverlight,Internet Explorer,Internet Explorer 7,autoI一直在开发嵌入ASP.NET web应用程序中的Silverlight 4应用程序。所述Silverlight控件的高度不同,在许多情况下,从屏幕底部垂直流动 这对于大多数浏览器(特别是IE 8、Chrome、Firefox)来说都没有问题,因为它们在HTML文档中添加了一个垂直滚动条。但是,IE7没有显示这些滚动条,因此无法查看整个Silverlight控件 我如何将其嵌入的代码片段: ... <div id="silverlightControlHost"> <o
...
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2"
height="100%"
width="100%">
<param name="source" value="MyApp.xap" />
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="4.0.41108.0" />
<param name="autoUpgrade" value="true" />
</object>
...
我尝试添加“溢出:自动”和边距/填充样式属性(显示滚动条,但实际上根本不滚动?),在
上设置静态大小,这两个属性都不起作用。请记住,即使在页面加载时间之后,此控件的高度也会发生变化(Silverlight控件会在不同高度的RootVisuals之间切换)
IE7的任何权威都知道如何规避这个问题吗?谢谢。戴夫
有时似乎有用的是添加以下样式:
<style type="text/css">
html, body {
height: 100%;
overflow: auto;
}
body {
padding: 0;
margin: 0;
}
#silverlightControlHost {
height: 100%;
text-align:center;
}
</style>
(关于Silverlight论坛的Frank Lan)
HTH我有一个类似的问题,我通过向html、body-min-width和height元素添加样式来解决它 像这样:
html, body
{
height: 100%;
overflow: auto;
min-height:500px;
min-width:700px;
}
对我来说,它在Opera 12和IE 9上工作你能发布你的CSS吗(如果有的话)?添加了唯一的CSS引用到讨论中的元素;没什么可看的。翻阅我的CSS代码,我在HTML和BODY元素上设置了所有这些属性。为了快速尝试,请在您的#silverlightControlHost样式中添加以下内容:“显示:块;位置:绝对;高度:自动;底部:0;顶部:0;左侧:0;右侧:0;”。最后但并非最不重要的一点:检查HTML页面标题中定义的HTML标准。。。没有正确的声明可能会改变模式(即所谓的“怪癖模式”),从而改变浏览器css的解释。没有好处:仍然缺少滚动条。Doctype=
Dispatcher.BeginInvoke(() =>
{
double height = this.RenderSize.Height;
double width = this.RenderSize.Width;
//silverlightControlHost is the div which hold silverlight object
HtmlPage.Document.GetElementById("silverlightControlHost").SetStyleAttribute("width", height.ToString() + "px");
HtmlPage.Document.GetElementById("silverlightControlHost").SetStyleAttribute("height", width.ToString() + "px");
});
html, body
{
height: 100%;
overflow: auto;
min-height:500px;
min-width:700px;
}