捆绑来自不同文件夹的样式表和脚本
Bundling Style Sheets and Scripts from Different Folders
在 ASP.NET MVC5 应用程序中,我有多个 CSS 和 JS 文件,我试图使用以下代码将它们捆绑在一起[=13=]
bundles.Add(new StyleBundle("~/myBundles/css").Include(
"~/lib/css/nivo-slider.css",
"~/css/core.css",
"~/css/shortcode/shortcodes.css",
"~/style.css",
"~/css/responsive.css",
"~/css/color/color-core.css",
"~/css/custom.css",
"~/myDefaultSS.css"
));
我在 _Layout 页面中使用它是这样的:
@Styles.Render("~/myBundles/css")
使用时,我在页面的hmlt源代码中看到如下
<link href="/myBundles/css?v=xt5fim6H60Umm4DuM_5iVudeIEOkrcbgXzG0o3CHtlU1" rel="stylesheet"/>
使用它后,我的网页无法正常显示。我认为这是因为我捆绑了来自不同目录的文件。那正确吗?我该如何解决这个问题?
捆绑样式时不要使用 @import
css 指令。如果您发布站点的发布版本,则它不起作用。如果您检查网络流量 [F12],您会看到在网络上找不到导入的 css 文件,因为优化没有将 @import
url 替换为正确的路径。
所以,不要使用导入的捆绑 css-files 或者关闭捆绑优化并通过其他方式优化它们。
可以通过 Web.Config 中的以下行关闭优化:
<compilation debug="true" targetFramework="4.5"/>
此外,您可以在 C# 中使用此代码:
BundleTable.EnableOptimizations = false;
在 ASP.NET MVC5 应用程序中,我有多个 CSS 和 JS 文件,我试图使用以下代码将它们捆绑在一起[=13=]
bundles.Add(new StyleBundle("~/myBundles/css").Include(
"~/lib/css/nivo-slider.css",
"~/css/core.css",
"~/css/shortcode/shortcodes.css",
"~/style.css",
"~/css/responsive.css",
"~/css/color/color-core.css",
"~/css/custom.css",
"~/myDefaultSS.css"
));
我在 _Layout 页面中使用它是这样的:
@Styles.Render("~/myBundles/css")
使用时,我在页面的hmlt源代码中看到如下
<link href="/myBundles/css?v=xt5fim6H60Umm4DuM_5iVudeIEOkrcbgXzG0o3CHtlU1" rel="stylesheet"/>
使用它后,我的网页无法正常显示。我认为这是因为我捆绑了来自不同目录的文件。那正确吗?我该如何解决这个问题?
捆绑样式时不要使用 @import
css 指令。如果您发布站点的发布版本,则它不起作用。如果您检查网络流量 [F12],您会看到在网络上找不到导入的 css 文件,因为优化没有将 @import
url 替换为正确的路径。
所以,不要使用导入的捆绑 css-files 或者关闭捆绑优化并通过其他方式优化它们。
可以通过 Web.Config 中的以下行关闭优化:
<compilation debug="true" targetFramework="4.5"/>
此外,您可以在 C# 中使用此代码:
BundleTable.EnableOptimizations = false;