dojo dijit/对话框设置小窗口的高度

ndasle7k  于 2022-12-16  发布在  Dojo
关注(0)|答案(2)|浏览(207)

我有一个dijit/对话框,在浏览器窗口大小〉1102 px时正常显示,但是当尺寸小于这个值时,它的行为就不正常了。我已经发现这是因为JS增加了固定的高度和更小的浏览器宽度(以及子节点上的一些附加绝对定位)。有人能解释一下为什么会存在这种情况,或者如何防止它设置这些高度/绝对定位吗(最好不是只需要使用!重要的造型无处不在)。或者,我是不是读错了,还有另一个原因正在发生?
我可以做一个plunker来显示这种情况,如果你在plunker小部件〈1105 px时加载它,你会在开发工具中看到一个固定的高度,但是如果你在plunker〉1105 px时加载它,你不会看到一个固定的高度。
https://plnkr.co/edit/JCY0qRzXPIwNIAUgVOFM?p=preview

require (['dojo/parser', 'dojo/domReady', 'dijit/Dialog'],
function (parser, ready, Dialog) {
    ready(function () {
       var dialog = new Dialog({title: "Random Title", style: 'width: 990px;'});
       dialog.set("content", "hello");
       dialog.show();
       parser.parse();
   });
   return {};
});

注意:您必须重新加载(停止然后运行)plunker才能以新的浏览器宽度重新加载对话框。在对话框打开时仅更改浏览器大小不会导致固定高度显示/消失

avwztpqn

avwztpqn1#

要解决这个问题,你可以使用对话框的css属性来修正blow snippet的宽度大小:

.dijitLayoutContainer {
  width: 990px !important;
}
// set some spacing from parent
.dijitDialogTitleBar,.dijitDialogPaneContent {
  width: 980px !important;
}

在工作代码段上方
x一个一个一个一个x一个一个二个一个x一个一个三个一个

kadbb459

kadbb4592#

文件显示:
默认情况下,对话框会根据内容调整大小,就像普通的<div>一样。如果内容对于屏幕来说太大,对话框会自动添加滚动条。
因此,您通常不需要为对话框设置明确的大小。如果您需要,则需要为对话框 * 内部 * 的div添加宽度/高度,或者在.dijitDialogPaneContent div上设置大小:
您示例设置了Dialog上width属性,本示例显示了如何在 inside 中设置

相关问题