【发布时间】:2016-10-19 22:49:52
【问题描述】:
作为一名正在学习的开发人员,我在使用 MVC 4 中的捆绑包时遇到了我的 CSS 文件问题。
我知道一些我认为很重要的事情:
- 当我在主体 web.config 中将调试值更改为 false 时,我放入 BundleConfig.cs 类中的 CSS 和 JS 文件会自动最小化。
- 我读到有人说重要的是要放置 CSS 和 JS 文件的确切名称,以避免它们被多次加载。我真的不知道这是否属实,但我更喜欢写出确切的文件名。我会欣赏一些关于的其他信息。
现在问题是这样的。
我有两个 CSS 文件:
fileOne.css
// fileOne.css
@import url("_fileTwo.css");
.body{
background: blue;
}
_fileTwo.css
// _fileTwo.css
.header{
color: red;
}
现在的问题是,当我在 bundle 中调用 fileOne.css 并将 web.config 中的 debug 属性设置为 false 时,Bundle 会将此消息放入生成的 CSS 文件中。
/* Error de minimización. Devolviendo el contenido no minimizado.
(430,1): run-time error CSS1019: Unexpected token, found '@import'
(430,9): run-time error CSS1019: Unexpected token, found 'url(_fileTwo.css)'
*/
当我将 _fileTwo .css 放入 BundleConfig.cs 类时,它会被加载并完美地最小化。
我创建 CSS 子文件的原因是因为我希望一切都井井有条,并与其他文件分开。你知道“分而治之”。
我想知道的是这个。 我必须将我的 CSS 子文件放在 Bundle 中吗? 有没有办法使用 MVC Bundles 在 CSS 中使用 @import 属性?
非常感谢您阅读本文,请原谅我的英语。
【问题讨论】:
-
很遗憾
@import默认不支持。您可以做的是删除@import并将两个css 文件放在BundleConfig.cs的同一个包中。 -
我明白了……默认不支持,但可以吗?
-
抱歉反馈迟了。不,我做不到,但另一件事是我工作的公司使用 Visual Studio 2012,而这个的 MVC 版本是 MVC3,对吗?我不确定是否可以在另一个新的 MVC 版本中使用导入。谢谢大家的关注。
标签: css asp.net-mvc