IE8, HTML5和组合类ala .class1.class2{}



我正在制作一个响应式网站,并定期做这样的事情:

.someclass {}
.someclass.with_context {}

IE8不识别第二个类。IE9。

我使用的是HTML5文档类型,它使用IE8标准模式作为默认页面。

任何想法?

CSS Tricks有一篇关于使用多个class/id的好文章。据我所知,大多数浏览器都支持它(包括IE7 -不包括IE6)。

当然,QuirksMode也有一篇关于它的文章。

如果你正在使用HTML5,你使用Shiv (headjs,或Modernizr,或其他方式的CSS识别HTML5元素)?

你能举一个jsFiddle的例子吗?

或者这只是一个打字错误?

你的HTML是这样的吗?
.someclass {}
.someclass.with_context {}
<div class="someclass with_context">Hello World</div>

还是像这样?

.someclass {}
.someclass .with_context {}
<div class="someclass">
<div class="with_content">Hello World</div>
</div>

编辑

你可能需要让你的HTML5元素block level:

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

如果我有几分钟的时间来追踪行为的细节,我会跟进的,但这里是我整理的:

众所周知,IE8确实支持

.myClass.anotherClass {}

Facebook曾经要求你使用

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">

使用Like按钮等。这导致了一些非常奇怪的边缘情况行为,并且切换到他们的"HTML5"/javascript类模块使其无关紧要。

最终做到这一点——有趣的部分是——一些使用是在媒体查询中,这似乎很重要。当我有更多的时间来测试和跟踪它们时,我会在这里跟进详细信息。

谢谢你的建议。

我想你指的是你的css

像这样的

<article class="someclass">
    <section class="with_context">something here</section>

</article>

注意上面可以使用标准div代替HTML5标签

无论如何,你的CSS在两个类之间需要一个空格

.someclass {SOME CSS}   
.someclass .with_context {SOME CSS}   

最新更新