Dav*_*din 6 html internet-explorer quirks-mode
我有一个特殊的情况,我只能控制文件<body>的内容.主持人,我假设为了保持灵活性,并没有声明一个会立即将IE推入怪癖模式的doctype.由于我对文档的控制有限,我该怎么做才能强制IE以标准模式呈现页面?
我相信你对此无能为力,除非你说,用JS动态重写页面内容并强制插入doctype。
您能详细说明一下您对 的控制程度吗<body>?你可以做 JS/脚本吗?
编辑:这是一个尝试,但我没有在 IE 中测试它。它可能会给你一些想法。我document.write()的outerHTMLofdocument.documentElement并将 compatMode 转换为 CSS1Compat。
您可能需要在重写时删除脚本块。就像我说的,我真的不建议尝试这个......
http://medero.org/first-line.html
编辑#2:它似乎在 IE6 中工作得令人惊讶。但刷新后,IE 会以某种方式缓存它,并永久保留其.document.write()ed 形式。为了解决这个问题,请在它后面附加一个查询字符串,例如?203984234。
再说一次,我不确定你的情况是什么,但我希望这能给你带来想法或帮助。
编辑 #3:我重写了它并将其绑定document.write到window.onload. 每次访问它时,您都需要附加一个唯一的查询字符串才能看到效果,因为它会在它之后缓存它.write。
http://medero.org/rewrite.html?f30324433322111
如果您需要更即时的东西,您可以使用 jQuery 的 DOM 就绪函数在窗口加载之前重写它。
杂项注释:
document.write如果视觉上重要的话,您可能可以通过 CSS 隐藏整个 html 文档,直到调用<script>在保存之前删除 document.write outerHTML,以便新写入的页面没有该script块。| 归档时间: |
|
| 查看次数: |
2151 次 |
| 最近记录: |