目前,我正在学习MVC风格的ASP.NET 4.5,并且我决定完全删除引导程序,并使用PureCSS(http://www.purecss.io)。
这主要是由于我的Web应用程序几乎不需要脚本,除了背后的代码外,还需要一些轻量级JS来进行数据验证等。
目前,我正在链接到Yahoo!的组合PureCSS样式表。 CDN:
<link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/pure-min.css">
在我的_Layout.cshtml文件中。这显然是有效的,但是我有两个问题:
如果CVN(无论出于何种原因)失败/下降/更改,所有样式都将消失,我将不得不立即解决(或实施一段时间的故障安全切换到另一个CDN)
我真的很喜欢捆绑的概念,并且我希望捆绑本地的PureCSS库,以防止上述问题以及出于模块化/分区的目的。
生成此捆绑包很简单:
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/purecss_release_1_6/some.css",
"~/Content/purecss_release_1_6/other.css",
"~/Content/purecss_release_1_6/neat.css",
"~/Content/purecss_release_1_6/etc.css",
...
"~/Content/site.css"));
如果是这样,那就没问题了,但是发行版中有css文件的DOZENS。有没有更清洁的捆绑方式?
谢谢!
最佳答案
您可以使用IncludeDirectory引用包含所有CSS文件的整个目录。
针对您的情况的示例:
bundles.Add(new StyleBundle("~/Content/css")
.IncludeDirectory("~/Content/purcss_release", "*.css"));
.NET 4.5中的新增功能是一个集成系统,用于从发生故障的CDN退回到本地材料。教程/信息:http://www.hanselman.com/blog/CDNsFailButYourScriptsDontHaveToFallbackFromCDNToLocalJQuery.aspx
上面链接中的可用信息:
CDN后备广告的基本思想是检查类型或变量
应该在脚本加载后出现,如果不存在,请尝试
在本地获取该脚本。注意重要的转义字符
在document.write中。这是jQuery:
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-2.0.0.min.js"></script>
<script>
if (typeof jQuery == 'undefined') {
document.write(unescape("%3Cscript src='/js/jquery-2.0.0.min.js' type='text/javascript'%3E%3C/script%3E"));
}
</script>
关于css - 将PureCSS添加到MVC 4.5捆绑包,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31522011/