2013-01-24 86 views
1

我觉得我很困惑自己在这里。在响应式设计中有点绿色,我试图根据查看的网站宽度导入2个样式表中的1个。CSS媒体查询导入手机

但是,当使用下面的代码时,在Firebug中查看时,这两者似乎都会拉低。

这是正确的吗?我究竟做错了什么?

我想什么来实现的,如果浏览器宽度小于940px,然后拉responsive.css,如果比这更大,拉full.css

我已经包括了回应。 JS库https://github.com/scottjehl/Respond

@import url("/inc/Styles/full.css") (min-width: 940px); 
@import url("/inc/Styles/responsive.css") (max-width: 940px) and (min-width: 100px); 
+0

你最好只包括一个单一的css文件的所有规则和服务,截至Gzip已不是担心装载两个文件的压缩。 – justinavery

回答

4

是的,这是正确的,没有,你没有做错什么,我可以告诉。我认为你已经超越了它(你真的不需要第二次导入时的最小宽度)。

如果您还没有阅读Ethan Marcotte的Responsive Web Design

+0

我大概是在想它=) – Kevin

+0

从链接的信息是有用的〜 – mintedsky

1

分离的CSS文件(由@import调用)总是自然地由浏览器加载。媒体查询无法解决该问题。为了能够拉相关的CSS文件,你需要使用不止CSS。

您可以处理服务器或客户端站点的问题。例如,你可以使用51degrees库的NET

或者你可以使用JavaScript窗口大小的dedector获得窗口的宽度值,并通过AJAX调用该spesific CSS或通过JS创建一个链接元素。

Bascially;

$(function(){ 
      if($(window).width() > 980){ 
       // your code etc. 
      } else{ 
       // your code etc. 
      } 
    }); 

而且这里检查 How to apply inline and/or external CSS loaded dynamically with jQuery