我在两个不同的项目中有两个div,通过JQuery dailog显示:
<div id="popupDiv">
<% Html.RenderAction("PopupAction", "Popup"); %>
</div>
$("#popupDiv").dialog(
{
autoOpen: false,
modal: true,
width: 465,
height: 586,
zIndex: 10001,
bgiframe: true
});
在这两种情况下,代码是相同的,并且部分视图的内容几乎相同(一个是我正在改进UI以节省时间的测试环境,所以我试图使它们尽可能接近但是弹出窗口在FireFox中使用两种不同的内联样式进行渲染:
<div id="popupDiv" class="ui-dialog-content ui-widget-content" style="width: auto; min-height: 0px; height: 475px;">
<div id="popupDiv" class="ui-dialog-content ui-widget-content" style="width: auto; min-height: 0px; height: 570px;">
我当然没有将这些高度设置在任何地方,实际上已经在相应的项目中搜索了这些值,但却一无所获。
IE 9似乎没有插入所有样式的东西,但是如果我在一个样式中设置div的高度,那么实际上只有一个使用了那个高度。
什么会导致JQuery对话框指定两个不同的高度?
答案 0 :(得分:1)
如果内容(以及内容使用的样式表)不是100%相同,那么对话框内容的高度可能只有差异(如果它受到边距的影响,可能不容易在视觉上发现填充)。使用Firebug的“布局”选项卡检查对话框子项的计算高度。
编辑:抱歉,我认为我没有仔细阅读。我没注意到你在对话框选项中设置了高度。我希望jQuery UI使用内联高度设置来达到最终所需的高度,一旦你在CSS中指定的任何内部填充被考虑在内,但是没有看到我不能说的其他页面。同样,Firebug的Layout选项卡似乎是调试它的第一个关键工具。