如果我使用新的HTML5代码,旧浏览器会发生什么变化?

时间:2016-05-11 02:06:11

标签: html html5

如果我使用<main><article><aside><footer><header><nav>元素会产生任何不良副作用有人用IE8试图加载我的页面?

2 个答案:

答案 0 :(得分:2)

你会发现很多关于这个的文章说这些新元素中的一些与通用块元素没有什么不同,因此它们不会造成任何兼容性问题,所有你需要确保兼容性的是为你的网站添加一个CSS规则导致相关元素的行为类似于块元素。像这样:

header, section, footer, aside, nav, main, article, figure {
    display: block; 
}

但是IE8和IE的早期版本构成了挑战。任何不在官方元素名单中的元素都不能用CSS设置样式。这意味着我们不能使其表现得像块元素或给它们任何格式,因为它们表现得好像它们不存在。

幸运的是,IE存在一种解决方法,可以识别这些新元素,从而可以对它们进行样式化,从而充分利用这些新的语义标记。这是一个名为HTML5Shiv的工具。

诀窍是调用document.createElement("section")会突然导致IE识别section元素。没有人知道为什么,但它确实有效。

但是,在使用任何元素之前,您需要确保在网站的早期调用它,否则它将无效。

答案 1 :(得分:1)

要回答您的问题,(旧版浏览器会做什么?),某些浏览器会忽略该元素。有些人将它们视为错误。有些人会将其视为<div>。它几乎到处都是。所以你需要做一些事情并将它们设置为块级别是你能为他们做的最好的事情。

Here's a longer review along with suggestions.