为什么<!DOCTYPE>停止javascript创建iFrame

Why does <!DOCTYPE> stop javascript from creating iFrames?

本文关键字:创建 javascript iFrame 停止 DOCTYPE lt 为什么 gt      更新时间:2023-09-26

我的网站使用Javascript创建iframe,我现在才意识到我从未为页面设置doctype,这几乎已经完成了。

出于某种原因,无论我使用哪种doctype,doctype标记都会导致弹出的iframe停止工作。

我不知道为什么会发生这种情况,但这可能与我的javascript有关(http://www.dosed.co.uk/assets/script.js)。

页面(尚未完全完成(如下:http://www.dosed.co.uk

很抱歉,我不能对这个问题说得更具体了!它在没有<!DOCTYPE>的情况下工作得很好,但有了它就不行了!?

如果没有Doctype,浏览器就会模仿旧浏览器的错误。这些错误包括错误特征,例如当分配给接受长度的CSS属性(如ifrm.style.width=x+20;(时,将数字视为具有像素单位的长度。

<!doctype html>,对于HTML5,不会导致<iframe>的问题。<iframe>在HTML5规范中:http://www.w3.org/TR/html5/embedded-content-0.html#the-iframe元素

当未指定doctype时,浏览器会认为页面非常旧,无法作为HTML5工作。