怪异模式下的 jquery 对话框未正确设置高度
我正在编写一个基于 jquery 的小部件,它将出现在另一家公司的网站上。当我尝试通过 $('#dialog').height(450) 设置对话框的高度时,它将对话框设置得更短。我可以通过使用 300 得到大约 450px 高(我知道,没有意义)。我确定该错误发生在 IE8 的怪异模式中。是的,我知道 jquery 不支持怪异模式。我无法更改文档类型,因为它不是我的网站。
尽管我所做的事情有效,但我需要理解为什么。有关于 jquery 如何在怪异模式下工作的明确指南吗?
I am writing a jquery based widget that will go on another company's website. When I try to set the height of the dialog via $('#dialog').height(450), it sets the dialog to be much shorter. I'm able to get it about 450px high by using 300 (I know, makes no sense). I've determine that the bug happens in IE8 in quirks mode. Yes, I know jquery doesn't support quirks mode. I can't change the doctype, since it's not my website.
Even though what I did worked, I need to understand why. Is there a definitive guide to how jquery works in quirks mode?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您是否对对话框应用了填充?
如果您使用怪异模式,则盒模型的渲染方式会有所不同。
请参阅http://www.quirksmode.org/css/box.html
Have you applied padding to the dialog?
The box model is rendered differently if you're using quirks mode.
See http://www.quirksmode.org/css/box.html
如果可能的话,您应该尽量避免怪异模式。但是,如果这不是一个选项,我已经成功执行此操作:(我假设您正在使用 jQueryUI)
这会调整 jQueryUI 对话框的外部 CSS 的大小。
You should try to avoid quirks mode, if possible. However, if that isn't an option, I've had success doing this: (I'm assuming that you're using jQueryUI)
Which resizes the outer CSS of the jQueryUI dialog.
尝试添加此样式规则并根据您的要求调整高度:
打开对话框
并将对话框的高度设置为自动以调整内部内容:
Try to add the this style rule and adjust the heigth to your requirements:
Open the dialog with
and set the heigth of the dialog to auto in order to adjust the inner content: