问题标签 [quirks-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
51825 浏览

html - 如何判断浏览器是否处于“怪癖”模式?

假设您的页面具有相对严格的 doctype 和 HTML 标记,非常接近合规性,但可能会以一些愚蠢的方式遗漏,可能是因为用户内容超出了您的控制...假设您正在处理内容管理系统或内容管理系统的主题,您可以在其中控制一些基本结构并需要一些 javascript,但您不对页面中的其他所有内容负责。

当浏览器决定进入“怪癖”模式而不是使用它更符合标准的引擎时,你如何判断(或:什么将决定)?

我正在寻找每个主要浏览器的答案,因为 IE、Chrome、Safari 和 Firefox 当然都会以不同的方式处理这些问题。一个错误足以迫使它发生还是你有一些回旋余地?

0 投票
5 回答
35028 浏览

c# - 如何以编程方式关闭 IE8 WebBrowser 控件中的怪癖模式?

我想在 C# 应用程序中使用 IE8 作为 WebBrowser 控件。如何禁用“怪癖模式”并强制 IE 符合标准(就其实施而言)?

0 投票
2 回答
3413 浏览

html - 如何使用流动表格行制作 XHTML“表格”

基本上,我希望能够制作一个框格,我可以在其中对齐每个框的顶部中间和底部的文本,并且当同一行中的另一个框中的文本将其向下推时,使同一行上的框调整大小。

如果您查看此 HTML 4 代码,它实现了我想要能够做的事情,但我希望能够使用 XHTML 1.0 doctype 来实现这一点。

0 投票
1 回答
730 浏览

activex - activex 控件上的 IE 严格模式闪烁

我有一个网页,其中包含(除其他外)几个嵌入的 activex 控件。它只在 IE 中呈现,并且处于严格模式。如果我突出显示页面中的任何文本(或使用 onmouseover 事件翻转图像以更改其图像或其他任何内容),所有控件都会可怕地闪烁。

如果我将页面更改为怪癖模式,闪烁就会消失。我进行了广泛的搜索以寻找解决方案,并发现了很多关于 IE 6 是如何被破坏和奇怪的东西,但这发生在 IE 7 和 8 中。

那么,关于我可以做些什么来解决和/或诊断这个问题的任何想法?

0 投票
2 回答
2022 浏览

css - 获取 IE6 quirks-mode position:标准模式下的绝对渲染

我的菜单上有一个绝对定位的导航,它被发送到左侧。*

它应该看起来像这样:

在除 IE6 之外的所有浏览器中,它都可以。在 IE6 标准模式下,它看起来更像这样:

这就是棘手的地方。在 IE6 的quirks mode中,它看起来是正确的(就那个框而言;其他一切都是垃圾)。

如何在不强制怪癖模式的情况下从 IE6 获得正确的行为?

* 是的,我知道我应该为此使用浮动,而不关心它会拉伸整个文档。但是导航栏的背景到达页面底部显然是神圣的,而且它不是平铺的background-image.

0 投票
1 回答
5961 浏览

asp.net - 在窗口调整大小或在选项卡之间切换之前,IE7 不会呈现页面的一部分

我的IE7有问题。

我有一个固定的布局,用于保持页眉和侧面板固定在页面上,只留下“主要内容”区域开关可以愉快地滚动它的内容。

Twitpic 上的布局 http://twitpic.com/show/thumb/e32q7.png

这种布局非常适合 IE6 和 IE8,但有时一个页面可能会开始“隐藏”应该在“主要内容”区域显示的内容。

页面完成加载就好了。瞬间 IE7 将渲染主要内容就好了,然后它会立即将其隐藏在视图中.. 某处.. 它似乎也只有在有足够的内容来强制“主要内容”区域时才会遇到这个问题滚动。

通过调整窗口大小或切换到另一个打开的选项卡并再次返回将导致 IE7 按预期显示页面。

请注意,在兼容模式下 IE8 也会出现同样的问题,但在 IE8 模式下页面可以正确呈现。

如果需要,我可以附加我使用的基本 CSS 样式,但我首先想看看这是否是 IE7 的一个已知问题。

IE7 是否存在定位布局和溢出滚动问题,有时会忘记正确完成页面渲染,直到某些窗口重绘事件强制完成渲染?

请记住,在站点的多个页面中使用完全相同的布局,因为它是在母版页中设置的。它只是(在这种情况下)遇到此问题的一页。

具有完全相同布局的其他页面确实可以正确呈现。即使主要内容足够满也可以滚动。

更新一个相关的问题,目前没有答案。

最新更新:添加示例母版页和 css

请注意,相同的布局对于应用程序中的所有页面都是相同的。我的 IE7 问题只出现在这样的一个页面上。所有其他页面都可以在 IE7 中正确呈现。只有一页,使用完全相同的布局,有时会在“工作空间”div 中隐藏内容。

母版页

布局.css

默认.aspx

0 投票
10 回答
3886 浏览

jquery - Weird bug when combining an ASP.NET updatepanel with the jQuery UI DatePicker

I've created a page which combines an inline jQuery UI datepicker . I wan't to initiate a callback to the updatepanel when the user clicks a new date to update some data. Now, this page has multiple updatepanels (don't ask :) ), so I need to check which updatepanel did the reload in order to do some stuff clientside. I'm using __doPostBack to do the postback and Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function(sender, args) {} to listen for when an update is done.

The problem is that in FF the callback tells me that it's not an async operation, and the data I need to have to check which updatepanel did the update is set to null.

My problem is that this works fine in IE, but not in any other browser, which could be caused by 2 things: IE goes into a quirksmode which resolves the issue (this is what I think) or that IE has some sort of native support for the updatepanel that other browsers dont.

I've narrowed the problem down, and produced a testpage:

Firing this testpage up in IE will result in a messagebox which shows what it's supposed to, while loading it in FF or Chrome results in a messagebox which says "null" :)

I've tried all sorts of things, but I'm unsure of what could cause this behaviour as I'm not really that deep into the inner workings of jQuery or ASP.NET Ajax. However, if I step through the code in FireBug slow enough it works ... Which leads me to think it might be a problem with interoperability between jQuery callbacks and ASP.NET Ajax callbacks?

Any help or ideas will be highly appreciated.

Thanks.

[UPDATE] Tim solved it! Thanks a lot! - Also thanks to everyone who spent their time trying to figure this out :)

0 投票
1 回答
758 浏览

css - 有没有办法在呈现 XML + CSS 时避免 IE7 怪癖模式?

我有一些带有 CSS xml-stylesheet 声明样式的 DocBook 文档。它在 Firefox 中看起来很棒,但 IE7 似乎不理解 CSS 子选择器(例如section > title { ... })。

我认为这是因为 IE 在 quirks 模式下运行以呈现此 XML,而旧版本的 IE 根本不支持该 CSS 语法。

我在网上找到的页面似乎都关注 HTML 和 XHTML 文档类型,以及在这些值的各种排列情况下 IE 将如何表现。我找不到有关直接 XML + CSS 的任何信息。更糟糕的是,似乎随机 XML 文档总是以怪异模式结束,无论它们具有什么格式或样式表指令。

IE中的XML渲染注定要兼容IE5.5吗?我真的需要重写我的 CSS 吗?

0 投票
3 回答
3624 浏览

javascript - Javascript 如何导致 IE 8 在兼容性视图中重新加载页面?

我正在 Windows Vista 上的 Internet Explorer 8 中测试一个相当复杂的基于 Javascript 的 Web 应用程序。加载应用程序后,IE 处于“标准”浏览器模式和“IE 8 标准”文档模式。在应用程序运行时,IE 有时会重新加载页面并显示一条消息,例如“(URL)的显示问题导致 Internet Explorer 在兼容性视图中重新加载页面”(不是确切的消息,我在Vista 的非英语版本)。重新加载后,浏览器处于 Quirks 模式。

由于无法可靠地重现或缩小问题,因此调试 Javascript 代码一直是徒劳的,因此我希望能深入了解可能导致此行为的原因。

0 投票
4 回答
987 浏览

php - php页面上没有怪癖模式?

我的网站都是 php 页面,因为它都是数据库的东西。但是,我无法将页面置于无怪癖模式......我做了常规的事情:

这不起作用。如果我用相同的代码创建一个 html 页面,它当然可以工作。

所以这让我相信我只能在 html 页面中关闭怪癖模式?也许这是一个愚蠢的问题,我不需要在 php 页面中关闭 quirks 模式?.. 请帮助,<form>不断打破一条线,我已经尝试了多个修复,但我认为它与该网站处于怪癖模式。