我可以修复jQueryMobile对话框的宽度和高度吗?目前,宽度的大小是100%,这在iPad中真的很糟糕。我可以修复jQueryMobile对话框的宽度和高度吗?
回答
您可以设置对话框的页面宽度,活生生的例子:http://jsfiddle.net/bXPTd/3/
<div data-role="page" id="bar">
<a href="#foo" data-role="button" data-inline="true" data-rel="dialog" data-transition="pop">Open dialog</a>
</div>
<div data-role="page" id="foo" style="width:300px;">
Hello Foo
<a href="#" data-role="button" data-rel="back">Close dialog</a>
</div>
我有一个类似的问题,我需要控制一个对话框的大小,使非模态 - 这样的背景页面在后面可见。 Phil的方法效果很好,但是你需要使背景容器透明并且使调用页面保持在DOM中并且仍然可见(从beta 2开始,DOM会自动修剪,以便从DOM中移除调用该对话框的页面当你显示对话框时)
第一步是使包含覆盖层透明,无论你使用什么主题,例如
.ui-body-a,
.ui-body-a input,
.ui-body-a select,
.ui-body-a textarea,
.ui-body-a button {
background-color: transparent;
font-family: Helvetica, Arial, sans-serif;
}
然后继续调用页面可见,确保其在DOM缓存加上data-dom-cache="true"
你调用页面,我发现你也不得不重写显示和z-index的风格(当然宽度),以确保它保持可见并在对话框后面,例如
<div id='homePage' data-role="page" data-theme='a' data-dom-cache="true" style='display:block !important;z-index: 0;width:300px'>
<div data-role="header" data-theme='a'><h1>Header</h1></div><!-- /header -->
<div data-role="content" data-theme='a' style='margin:0; padding: 0'>
<a href="#testdialog" data-role="button" data-rel="dialog" data-transition="pop">Open Dialog</a>
</div><!-- /content -->
</div><!-- /page -->
您也可以缓存在每一页的DOM,而不是增加data-dom-cache="true"
的每一页,通过调用;
$.mobile.page.prototype.options.domCache = true;
但这似乎很重。
编辑:
发现了另一种可能的方式来调整宽度/高度,你可以修改对话框的边缘;
.ui-dialog .ui-header,
.ui-dialog .ui-content,
.ui-dialog .ui-footer {
margin-left: 100px;
margin-right: 100px;
}
你仍然需要做我提到关于保持前一页面看到背后的东西!
忘了补充,居中对话框我必须设置左边距,我敢肯定有一个更好的办法来做到这一点 - 但这个工作对我来说;-) – 2011-08-17 20:30:24
我在Mike的建议之外做了这个,后台页面是可见的,只有对话框覆盖,而不是对话框的背景。
.ui-dialog {
min-height: 480px;
background-color: transparent;
background-image: none;
}
想到分享更新为RC2的 - 最大宽度现在默认为500像素与编辑默认的选项。这解决了您使用大屏幕时遇到的问题。 http://jquerymobile.com/blog/2011/10/19/jquery-mobile-1-0rc2-released/#features
此外,类似的概念作为迈克,我仍然调整这一个 - 但要创建一个可见的背景覆盖对话框,你需要1.删除.ui对话框的背景颜色& 2。确保调用页面显示为块2.将调用页面的不透明度设置为50%。这也(至少在Chrome 14中)解决了我自动执行的任何z-index问题!
.ui-dialog{ background: none;}
.inactive{ opacity: .50; display: block;}
其中inactive是我添加到调用对话框的div中的类。您需要检查以确保不活动的课程优先于默认display: none;
,并且可能使用一些JavaScript添加内联样式。
太好了!这工作良好,但我发现一个问题。它与您的修复程序无法工作的嵌套对话框有关。 [看这里](http://jsfiddle.net/QqTQg/)。 – andreapier 2011-11-04 11:19:18
作为jQueryMobile的较新版本的(我觉得这个版本1.0),你现在可以覆盖主题添加到对话页面。这使您可以使用一个假像的主题数据覆盖主题=“Q”,然后在你的CSS设置是这样的:的.ui叠加-Q {背景:无; z-index的:5;}这是不是步骤1。 – 2012-01-03 07:48:44
我不知道这是否最近发生了变化;但我想我会为jQuery Mobile 1.1提供一个答案。
要解决的宽度所有的对话框,你需要添加下面的CSS规则:
.ui-dialog-contain {
max-width: 600px;
}
如果你不想gobally应用此设置,您可以指定单独的页/对话框,它的id如:
#my-dialog .ui-dialog-contain {
max-width: 600px;
}
- 1. 如何修复primefaces对话框的宽度和高度
- 2. 我可以修复JRadioButton的宽度吗?
- 3. 修复节点宽度和高度Spacetree
- 4. 如何减少进度对话框的高度和宽度?
- 5. 使JQuery对话框内容100%的宽度和高度
- 6. android设置对话框片段的宽度和高度
- 7. 修复A标签高度/宽度?
- 8. 使用jQuery对话框自动调整宽度和高度
- 9. HTML - 可以修复表格的宽度?
- 10. 居中未知高度的jQuery UI对话框 - 可以吗?
- 11. 如何修复图像的高度和宽度的WebView的Android
- 12. <span>可以有宽度和高度吗?
- 13. 我可以修改我的面板的儿童宽度吗?
- 14. 您可以确定Flash/SWF对象服务器端的宽度和高度吗?
- 15. jQuery UI对话框中的Textarea高度/宽度
- 16. 我可以在金字塔中获得浏览器的宽度和高度吗?
- 17. 我们可以在android中设置网页视图的高度和宽度吗
- 18. ImageView缩放:使用maxWidth修复高度可变宽度
- 19. 窗口边框的宽度和高度
- 20. 会话会保存缓冲区的宽度和高度吗?
- 21. css代码来修复宽度和高度 - bootstrap
- 22. Java桌面应用程序:如何修复高度和宽度
- 23. 高度和宽度
- 24. 对话框定制宽度高度问题
- 25. 获得绝对的高度和宽度
- 26. 绝对值的高度和宽度
- 27. 我可以设置UIWebBrowserView的宽度吗?
- 28. 如何在Android中控制默认警报对话框的宽度和高度?
- 29. 如何在调整大小后获取对话框的高度和宽度?
- 30. 如何设置日期选取器对话框的高度和宽度
它的50%是正确的。因为如果我这样做,叠加无法占用屏幕的100%空间。按照您的定义,它只能使用300像素的屏幕。我想要的是我只想修复对话框的宽度不包括覆盖。 – ppshein 2011-05-10 01:42:54