在Dynamics CRM 365的Edge浏览器中SSRS报表垂直滚动条不显示
解决Dynamics CRM 365中SSRS报表在旧版Edge无垂直滚动条的问题
我之前也碰到过类似旧版Edge和SSRS报表兼容的坑,结合你提到的overflow样式缺失的情况,给你几个针对性的解决思路:
强制给报表容器注入滚动样式
既然Edge没自动加载overflow样式,我们可以手动通过自定义脚本补上去。首先打开Edge的F12开发者工具,找到报表所在的iframe或者外层容器的选择器(比如类名或ID),然后通过CRM的Web资源添加一段自定义JavaScript:// 延迟执行确保报表容器已加载 setTimeout(() => { const reportContainer = document.querySelector("#reportViewer_ctl09_ctl03"); // 替换成你实际找到的容器选择器 if (reportContainer) { reportContainer.style.overflowY = "auto"; // 可以根据页面布局设置最大高度,避免滚动条覆盖页面元素 reportContainer.style.maxHeight = "calc(100vh - 180px)"; } }, 2500);注意:不同CRM版本的报表容器结构可能不同,一定要自己通过F12定位准确的元素。
关闭Edge的兼容性视图
你用的Edge 40.x是基于EdgeHTML的旧版本,很可能默认对CRM站点启用了兼容性视图,导致CSS渲染异常。操作步骤:- 打开Edge的「设置」→「兼容性视图设置」
- 把你的CRM域名从“添加到兼容性视图中的网站”列表里移除
- 取消勾选「在兼容性视图中显示Intranet站点」(如果你的CRM是内网站点)
调整SSRS报表的页面配置
回到SSRS报表设计器里,尝试修改报表的交互大小:- 打开报表的「属性」→「页面设置」
- 切换到「交互大小」选项卡,把高度设置为一个适合浏览器视口的值(比如1000px),不要让报表高度无限制延伸
这样容器更容易计算出需要滚动的区域,自动触发滚动条。
升级到新版Edge
你当前使用的Edge版本太老旧了,微软现在主推基于Chromium的新版Edge,对现代CSS和SSRS的兼容性提升非常大。如果公司政策允许的话,直接升级到最新版Edge,大概率能直接解决这个问题,后续也能避免更多类似的兼容坑。
内容的提问来源于stack exchange,提问作者Priti.K
相关产品推荐
相关产品推荐

