2012-09-27 50 views
2

当屏幕小于1000像素时,我有CSS媒体查询覆盖元素。媒体查询运行良好,直到我打开一个colorbox,那时媒体查询被以前的样式覆盖。当灯箱打开时,CSS媒体查询被覆盖

我的代码是这样的:

master.css

#header .holder { 
... 
width: 960px; 
... 
} 

mobile.css

@media all and (max-width: 1000px) and (min-width: 320px) { 
    #header .holder { 
    ... 
    width: 100%; 
    ... 
    } 
} 

当我打开一个颜色框,我得到这个在Chrome的CSS检查:http://i.imgur.com/mhWvF.png (前风格重写媒体查询')

为什么代码被覆盖?在窗口中触发颜色盒会发生什么事件?

+0

你的CSS文件的顺序是什么?这可能是因为即使是狭窄的浏览器也能满足主要宽度,所以它不需要应用移动版本。试着把mobile.css放到最后,这是最后一件事情了? – edparry

+0

'colorbox'是什么意思? – Sven

+0

从您的屏幕截图看来,以前的样式来自'master.php',这将使其成为内部样式表。由于它与外部样式表具有相同的选择器特性,因为内部样式表具有更高的优先级,是否可以使用以前的样式? – Zhihao

回答

1

这里是colorbox的作者。我以前没有听说过这个问题,但可能是您在colorbox中显示的内容的结果。

这样的奇怪问题通常是由于人们不正确地将HTML文档作为ajax打开,而不是将它们显示在iframe中。无效的HTML,脚本和样式的混合导致各种问题。

我的猜测是,这是你的实现特定的东西。我建议尝试在jsfiddle.net中创建一个简化的问题展示并在此发布链接,或者发送给colorbox的问题跟踪器。

+0

是的杰克,这使得它,这是问题:我打开我的colorbox窗口作为ajax,文档加载覆盖父文档中的样式。这是一个错误,谢谢你的帮助。 – hachesilva