我想我应该<!DOCTYPE html>用于我的新GWT应用程序; 我知道这样做会使我的应用程序进入符合标准的模式.我对么?使用此doctype有什么缺点吗?GWT是否在符合标准的模式下正常工作?我很谨慎,因为GWT教程仍然使用HTML 4.01过渡文档类型.
我有一个特殊的情况,我只能控制文件<body>的内容.主持人,我假设为了保持灵活性,并没有声明一个会立即将IE推入怪癖模式的doctype.由于我对文档的控制有限,我该怎么做才能强制IE以标准模式呈现页面?
我有IE7的问题.
我有一个固定的布局,用于保持标题和侧面板固定在页面上,只留下"主要内容"区域开关可以愉快地滚动它的内容.
Twitpic上的布局http://twitpic.com/show/thumb/e32q7.png
这种布局对于IE6和IE8非常适用,但有时一页可能会"隐藏"应该在"主要内容"区域中显示的内容.
页面完成加载就好了.一瞬间IE7将渲染主要内容就好了,然后它会立即将其隐藏在视图中...某处...当有足够的内容强制"主要内容"区域时,它似乎只会遇到此问题滚动.
通过调整窗口大小或切换到另一个打开的选项卡再返回将导致IE7按预期显示页面.
请注意,兼容模式下IE8会出现同样的问题,但在IE8模式下页面会正确呈现.
如果需要,我可以附加我使用的基本CSS样式,但我首先想看看这是否是IE7的已知问题.
IE7是否存在定位布局和溢出滚动的问题,有时会忘记完全正确渲染页面,直到某些窗口重绘事件强制完成渲染?
请记住,这个完全相同的布局用于站点中的多个页面,因为它是在母版页中设置的.它只是(在这种情况下)一个页面遇到了这个问题.
具有完全相同布局的其他页面可以正确呈现.即使主要内容足够滚动也是如此.
最新更新:添加示例母版页和CSS
请注意,相同的布局对于应用程序中的所有页面都是相同的.IE7的问题只发生在一个这样的页面上.所有其他页面都可以在IE7中正确呈现.只有一个页面使用完全相同的布局,它有时会隐藏"工作空间"div中的内容.
母版页
<%@ Master Language="VB" CodeFile="MasterPage.master.vb" Inherits="shared_templates_MasterPage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link rel="Stylesheet" type="text/css" href="~/common/yui/2.7.0/build/reset-fonts/reset-fonts.css" runat="server" />
<link rel="Stylesheet" type="text/css" href="~/shared/css/layout.css" runat="server" />
<asp:ContentPlaceHolder ID="head" runat="server" />
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div id="app-header">
</div>
<div id="side-panel">
</div>
<div id="work-space">
<asp:ContentPlaceHolder ID="WorkSpaceContentPlaceHolder" runat="server" />
</div> …Run Code Online (Sandbox Code Playgroud) 我在一个无法访问的开发人员的参数范围内工作,他们为我们的产品创建了一个html生成系统.每当生成新页面时,他放置:
<!-- updated page at 05/MAY/2010 02:58.58 -->
<!-- You must use the template manager to modify the formatting of this page. -->
Run Code Online (Sandbox Code Playgroud)
导致我的代码看起来像:
<!-- updated page at 05/MAY/2010 02:55.30 -->
<!-- You must use the template manager to modify the formatting of this page. -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
Run Code Online (Sandbox Code Playgroud)
我根本不相信IE读取这个doctype,因为在查看开发人员屏幕时,它以Quirks模式呈现......有没有其他方法可以迫使IE退出这个可怕的Quirks模式?我一直试图联系开发者,但他一直不太可用..
提前感谢您提供的任何帮助.
//编辑:
这可以通过javascript来执行,使用on load命令命中父页面吗?
近十年来我一直在使用:
document.body.scrollHeight
Run Code Online (Sandbox Code Playgroud)
返回浏览器窗口的" 理想 "高度.当我通过使用quirks-mode doctype 强制 Internet Explorer进入怪癖模式时,这很好用:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
Run Code Online (Sandbox Code Playgroud)
现在我想选择标准模式,除了意义scrollHeight已经改变:
document.body.scrollHeight=文档的高度document.body.scrollHeight= <body>元素的高度什么是标准模式相当于document.body.scrollHeight?
在过去的几个月里,我一直在研究一个大型的Web应用程序.反复地,我们编写的代码根据DOM和JS规范应该可以完美地工作,但仍然设法完全杀死我们的一个或多个测试浏览器 - 最近,我们生成的纯JavaScript代码应该是无害的但会导致一般IE8中的保护错误,完全冻结Safari等的其他代码片段
好吧,我们将逐项解决每个问题,尽可能多的血液,汗水和代码.但我想到的问题如下:是否有关于此类浏览器弱点的知识库?与quirksmode.org相似的东西,但是有关如何编写代码以避免杀死我们的浏览器的指南?
谢谢.
编辑精度:并不是它改变了问题,但我们正在使用jQuery.
我有一个问题,我有一个没有doctype的页面.
我无法在服务器上访问它,因此我无法自己添加doctype声明.
这会导致浏览器以怪癖模式呈现,几乎所有设计都需要针对不同资源管理器版本的单独样式表.一些困难的布局甚至不适用于Firefox.
如果我能以某种方式告诉浏览器(可能通过JavaScript)以标准模式呈现,所有这些问题都将结束.有什么我可以做的吗?
谢谢
该页面是在我的范围之外生成的,它只将我的HTML(包括javascripts)放入其整个内容的一部分中.
它不是非法的或任何东西,它只是一个自定义的ebay列表页面,我需要正常渲染而不是每次都崩溃,并迫使我应用各种修复.
我正在尝试解决一些表格(嵌套)遇到的显示问题。简而言之,我们显示一个列出产品的页面。每个产品都显示在它自己的表格中。每一个都嵌套在一个更大的表格中来布局页面。不幸的是,一些内部表格的内容比其他表格稍多,并且它们最终的大小不同,导致其他表格无法填充包含的单元格。
例如:
<table style="height:500px; background:blue;">
<tr>
<td style="vertical-align: top">
<table style="background:red; height: 100%;">
<tr>
<td>hello</td>
</tr>
</table>
</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
在怪异模式下,红色表格填充蓝色表格,因此您基本上会看到带有蓝色边框的红色表格。
然而,在标准模式下,内部表格不会扩展以填充蓝色表格。导致布局完全不符合预期。
我该如何解决这个问题?我不想以怪癖进行渲染,因为这最终会造成维护噩梦。
我在IE9中注意到使用矩阵DXIImageTransform将像素化旋转文本.我在IE8或7中没有这个问题.通常我会在IE9中使用css3选项,但由于我无法控制的原因,页面呈现为怪异模式(有效的html5 iframe嵌入在没有doctype的第三方页面中)
这是我正在使用的代码:
<!--Looks like crap but is my only option in quirks mode-->
<span style="position:absolute;
filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand',
M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);">
Does this make my butt look pixelated?
</span>
Run Code Online (Sandbox Code Playgroud)
在IE8中,结果旋转文本是平滑的,但在IE9中,它是非常像素化的.与此相比(在怪癖模式下不起作用)
<!-- looks great but doesn't work in quirks mode-->
<span style="position:absolute; top:150px; -ms-transform: rotate(-45deg);">
Does this make my butt look pixelated?
</span>
Run Code Online (Sandbox Code Playgroud)
要查看它的实际效果,请查看IE9中的 这个小提琴http://jsfiddle.net/U4CCD/3/
我的问题是,如何在怪异模式下在IE9中旋转文本,这看起来并不像所有像素化和模糊.为什么矩阵变换开始在IE9中吸吮?
如果你有幸不运行IE9,这就是我所看到的.更清晰的例子是它在IE8中的外观以及它使用css3变换的外观.

我正在建立一个我们试图在IE10上工作的网站.在这个网站上我们有一个iframe,当我们使用IE5 quirksmode时我们真的需要main网站才能工作,因为某些原因我们不能在IE10中使用Quirks文档模式,因为那时主网站不会工作.
那么到底是什么,它IE5 quirks和quirksIE9 | 8一样吗?
inb4 OP是non-standars compliant:这是一款传统产品,我们正在努力开发新版本.
browser internet-explorer web-standards quirks-mode internet-explorer-10