我正在建立一个网站,需要IE 8支持。我正在使用HTML5语义元素(主要,部分,文章,导航,页眉和页脚)。
我知道这些不应该在IE 8中工作所以我包含了html5shiv。
并将所有元素设置为display: block;
。
我的布局在IE 8中仍然是一团糟...所以我在所有语义元素中添加了类,并使用这些类来设置CSS中的元素样式。
现在布局是正确的,我似乎不再需要html5shiv。
这甚至可能吗?你可以使用类来设置语义元素的样式而不使用html5shiv吗?如果是这样,为什么要使用html5shiv?
nav {color: red}
不起作用,但
<nav class="nav">
.nav {color: red}
似乎没有html5shiv。有人可以证实这一点吗?
编辑: 经过一些仔细的测试后,我发现了以下内容:
当在页面上有一个SVG元素(不会在IE 8中呈现)时,可以使用类来设置语义元素的样式,而无需使用html5shiv。 这非常奇怪,可能是IE 8中的某种错误。