【发布时间】:2012-05-15 16:14:04
【问题描述】:
我必须将 CSS 文件合并到一个大的 CSS 文件中,以减少页面加载期间建立的连接。基本上,如果我只是将 CSS 文件附加到一个大文件中,这些样式是否会像以前一样工作,或者当您将多个 CSS 文件合并在一起时是否有任何问题?我正在用 Java 开发我的软件,如果有一些库已经进行 CSS 合并,我想听听。
【问题讨论】:
-
不,不会有任何冲突,因为在合并之前是没有的。
我必须将 CSS 文件合并到一个大的 CSS 文件中,以减少页面加载期间建立的连接。基本上,如果我只是将 CSS 文件附加到一个大文件中,这些样式是否会像以前一样工作,或者当您将多个 CSS 文件合并在一起时是否有任何问题?我正在用 Java 开发我的软件,如果有一些库已经进行 CSS 合并,我想听听。
【问题讨论】:
使用 HTML Boilerplate 中的 ANT build script,可以完美地完成您正在尝试的任务。
【讨论】:
如果您的 CSS 文件使用 @import,那么将它们合并到一个文件中可能会更改导入的 URL。
当 @import 具有相对 URL 时,它会根据包含 CSS 的 URL 进行解析,因此您最终可能会无意中破坏 @imports。
http://www.w3.org/TR/css3-values/
为了创建不依赖于资源绝对位置的模块化样式表,作者应该使用相对 URI。相对 URI(如 [URI] 中定义)使用基本 URI 解析为完整 URI。 RFC 3986 第 3 节定义了此过程的规范算法。 对于 CSS 样式表,基本 URI 是样式表的,而不是源文档的。
【讨论】:
我隐约记得(阅读:我可能是错的和/或过时的)如果 @charset 声明不在文件的开头,某些浏览器会出现问题。这是否延伸到其他@directives,我不记得了。
【讨论】: