带有IE 11的ReportViewer 11:报告高度超出限制

时间:2014-01-08 15:55:50

标签: asp.net css reportviewer

我们正在使用Microsoft ReportViewer 11来显示我们的业务报告。 在我们的aspx页面上,我们只是将它包含在:

<rsweb:ReportViewer ID="ReportViewer" runat="server" Width="830px" Height="800px" />

一切顺利,直到我们的客户从IE 10升级到IE 11。 在IE 10中,报告在定义的大小内正确显示,显示滚动条, 当报告超出限制时。 Firefox或其他浏览器也是如此。 相反,在IE 11中,报告以全长显示,即报告超过 下边框,没有显示滚动条。当我在IE 11中激活兼容模式时也是如此。

PS:我们拥有所有服务包和最新的reportviewer 2012运行时。

5 个答案:

答案 0 :(得分:3)

请勿使用兼容模式,因为它不会更改页面的显示方式。而是,设置文档模式。见How to set doc mode

答案 1 :(得分:2)

试试这个:

&#13;
&#13;
.repViewer{overflow-y:auto !important;}
&#13;
<rsweb:ReportViewer ID="ReportViewer" runat="server"  Height="400px" CssClass="repViewer">
&#13;
&#13;
&#13;

答案 2 :(得分:1)

将报表视图控件包装在DIV中并将其高度设置为800px并将overflow设置为auto。这样您就不必修改默认文档模式。

答案 3 :(得分:1)

问题是父元素高度小于子元素高度,即使您在父css中指定了overflow-y:auto,它也不会在IE-11.0.40版本中获取。

问题IE新更新-KB4012204

我们必须在脚本中使用以下代码,问题将得到解决

我只是将父元素高度分配给子元素来解决问题

    var div = document.getElementById('ctl00_body_rvReport_ctl10');
if (typeof (div) != 'undefined' && div != null) div.style.height =div.parentElement.clientHeight + 'px'; 

答案 4 :(得分:0)

我遇到与ReportViewer v10中描述的问题相同的问题。 它只出现在IE11上。其他浏览器工作正常。

我最后通过在我的报告aspx文件中添加一段代码来修复它。

<style type="text/css">   
  div[id='yourreportid']
  { 
   height: 1px;   
  }
</style>

我发现高度的值无关紧要。在px单位中输入任何值都可以。放高:100%;不工作。