SharePoint 2010 弹出对话框大小不正确

SharePoint 2010 incorrect popup dialog size

我正在将 SharePoint 2007 Web 应用程序的外观更新到 SharePoint 2010。

新项目、编辑等的弹出对话框有固定宽度和高度的内联样式,这让我很惊讶。如下所示,div.ms-dlgContent、.ms-dlgBorder、.ms-dlgTitle 和 iframe.ms-dlgFrame 都设置了内联固定宽度。

<div class="ms-dlgContent" role="dialog" aria-labelledby="dialogTitleSpan" tabindex="-1" style="z-index: 1505; display: block; width: 502px; height: 518px; left: 699.5px; top: 10px;">
  <div class="ms-dlgBorder" style="width: 500px; height: 516px;">
    <div class="ms-dlgTitle" style="width: 500px;">...</div>
    <div class="ms-dlgFrameContainer">
      <iframe id="GUID" class="ms-dlgFrame" src="/_layouts/listform.aspx?ListId=GUID" frameborder="0" style="width: 500px; height=484px;">...</iframe>
    </div>
  </div>
</div>

我可以在浏览器开发者工具中使用 jquery 访问和更新 div 和 iframe:

$('.ms-dlgContent').css('width','');
$('.ms-dlgBorder').css('width','');
$('.ms-dlgTitle').css('width','');
$('.ms-dlgFrame').width('');

但我认为这不是解决问题的合适方法。我应该尝试让 SharePoint 2010 在打开时正确调整对话框的大小。

由于样式是内联的,用我的自定义 css 文件覆盖它是行不通的。

我试过将 jquery 放在我的母版页中,并尝试用 document.ready(...) 更新 listform.aspx 页面,但当然,两者都不起作用(如我所料).

任何人都可以帮助我如何让 SharePoint 使用 css(首选)正确调整弹出对话框的大小,或者我可以在哪里放置 jquery 来调整弹出对话框的大小?

提前致谢。

我们可以使用 CSS !important 来覆盖默认的 CSS 样式。以下款式供大家参考。

<style type="text/css">
.ms-dlgContent{
    width:800px !important;
    height:500px !important;
    top:120px !important;
}
.ms-dlgBorder{
    width:800px !important;
    height:500px !important;
}
.ms-dlgTitle{
    width:800px !important;
}
.ms-dlgFrameContainer{
    width:800px !important;
    height:500px !important;
}
.ms-dlgFrame{
    width:800px !important;
    height:497px !important;
}
</style>

如果您不想使用列表中的默认弹出对话框,我们可以进入列表设置->高级设置并设置“在对话框中启动表单?”到“”。