是否仍有理由使用“不”字@进口;css规则?
我最近在Coda.com上遇到了@import规则的使用。他们实际上使用导入站点的主样式表,特别是格式:是否仍有理由使用“不”字@进口;css规则?,css,web-standards,Css,Web Standards,我最近在Coda.com上遇到了@import规则的使用。他们实际上使用导入站点的主样式表,特别是格式: <style type="text/css" media="screen"> @import url(./coda.css); </style> @导入url(./coda.css); 这将对Netscape 3和IE 3和4隐藏规则。既然web开发工具的主要受众将使用现代浏览器,那么使用此工具而不是链接还有什么其他原因呢?无。使用元素还具有摆脱 编辑:在另
<style type="text/css" media="screen">
@import url(./coda.css);
</style>
@导入url(./coda.css);
这将对Netscape 3和IE 3和4隐藏规则。既然web开发工具的主要受众将使用现代浏览器,那么使用此工具而不是链接还有什么其他原因呢?无。使用
元素还具有摆脱
编辑:在另一个样式表(
.css
文件)中使用@import
可以像在C中使用#include
一样使用,但是没有任何理由在
块中使用@import
。
元素)中的@import
语句有许多用途,例如,可以方便地交换其他CSS文件。Blueprint CSS框架这样做是为了让您轻松删除框架的某些部分,例如排版或网格内容
当然,在生产环境中,使用大量的import语句是不可取的,因为这会增加web浏览器必须下拉的文件数量。现在使用此规则的唯一原因是通过将CSS拆分为不同的文件(如库),使CSS更加模块化 因此,虽然您的页面可能链接到一个样式表,但该样式表可以@导入其他样式表以进行重置、排版等
但是,这确实会降低页面的加载速度,因为这只是更多的连续http请求。我同意Andrew的观点。我还使用导入逻辑地拆分css。就我个人而言,我喜欢将它们分为4类:重置、结构、排版、常规(背景/边框等) css文件也可以按页面部分(如header.css、footer.css等)进行拆分,这取决于用户、样式和偏好 但是,为了避免多个http请求,我还做了一件额外的事情,那就是创建一个合并(按导入顺序)并压缩css文件以进行实时部署的构建过程
希望这能有所帮助我自己也使用模块化开发方法,通常会得到10多个单独的CSS文件。正如您所知,这是一个相当大的HTTP请求数,所以我喜欢使用 Blender是一个rubygem,它将任意数量的CSS文件合并并缩小为一个样式表。它也适用于JavaScript 您可以在单独的样式表中定义@media,以便只为正确的设备类型提供适当的规则