【发布时间】:2012-01-29 10:07:17
【问题描述】:
简而言之:
在进行响应式网页设计时应该使用一个还是多个样式表?
详细说明:
在responsive design 中,您倾向于拥有一个主要的 CSS 块,然后在到达某些断点时调整布局的其他点点滴滴。您可以通过以下两种方式之一来构建您的代码:
单个样式表
/* Main CSS */
@media only screen and (min-width: 480px) { /* CSS */ }
@media only screen and (min-width: 640px) { /* CSS */ }
@media only screen and (min-width: 800px) { /* CSS */ }
多个样式表
<link rel="stylesheet" media="screen" href="main.css">
<link rel="stylesheet" media="only screen and (min-width: 480px)" href="480.css">
<link rel="stylesheet" media="only screen and (min-width: 640px)" href="640.css">
<link rel="stylesheet" media="only screen and (min-width: 800px)" href="800.css">
似乎使用一个样式表会减少 HTTP 请求的数量,但是您将拥有一个更大的文件,其中包含一些客户端可能不会使用的代码。多个样式表似乎可以减小文件大小,但是您有更多的 HTTP 请求。
您应该何时选择每种方法?在实践中,HTTP 请求数量和文件大小的优缺点如何叠加?
【问题讨论】:
-
处理 HTTP 请求(往返)或处理超过必要的 CSS 文件需要更长的时间?
-
在大多数样式表中,文件大小相对较小。即使是 50K 的 LARGE css 文件也可能是您在性能优化方面最不必担心的问题。
标签: css media-queries responsive-design