css 的捆绑包工作不正常
Bundle works wrong for css
我在布局中包含这些 css 个文件
<!-- Dropdown Menu -->
<link rel="stylesheet" href="~/Content/superfish.css">
<!-- Date Picker -->
<link rel="stylesheet" href="~/Content/bootstrap-datepicker.min.css">
<!-- CS Select -->
<link rel="stylesheet" href="~/Content/cs-select.css">
<link rel="stylesheet" href="~/Content/cs-skin-border.css">
<!-- Themify Icons -->
<link rel="stylesheet" href="~/Content/themify-icons.css">
<!-- Flat Icon -->
<link rel="stylesheet" href="~/Content/flaticon.css">
<!-- Icomoon -->
<link rel="stylesheet" href="~/Content/icomoon.css">
<!-- Flexslider -->
<link rel="stylesheet" href="~/Content/flexslider.css">
<!-- Style -->
<link rel="stylesheet" href="~/Content/style.css">
现在我想在 bundle
中移动这些文件,所以我这样做了:
public static void RegisterBundler(BundleCollection bundles)
{
bundles.Add(new StyleBundle("~/Content/style.css").Include(
"~/Content/superfish.css",
"~/Content/bootstrap-datepicker.min.css",
"~/Content/cs-select.css",
"~/Content/cs-skin-border.css",
"~/Content/themify-icons.css",
"~/Content/flaticon.css",
"~/Content/icomoon.css",
"~/Content/flexslider.css",
"~/Content/style.css"
));
BundleTable.EnableOptimizations = true;
}
在我的布局中:
@Styles.Render("~/Content/style.css")
但是从这个:
它是这样的:
当我打开这个新的 css 文件(来自浏览器开发工具)时,一些 css
代码丢失了。特别是第一个文件丢失了(superfish.css
),但它与其他文件在同一个文件夹中
我做错了什么?
它可能会混淆并呈现实际的 style.css
而不是包。尝试将包的名称更改为其他名称,即 new StyleBundle("~/Content/main.css")
。此外,您可能使用了错误的渲染 - 它应该是 @Styles.Render("~/Content/style")
(注意删除的 .css
部分)
捆绑是 ASP.NET 4.5 中的一项新功能,可以轻松地将多个文件合并或捆绑到一个文件中。
Bundle class Include 方法采用字符串数组,其中每个字符串都是资源的虚拟路径。
像下面这样更改您的代码:
注意:去掉StyleBundle()里面的文件扩展名
public static void RegisterBundler(BundleCollection bundles)
{
//
bundles.Add(new StyleBundle("~/Content/style").Include(
"~/Content/superfish.css",
"~/Content/bootstrap-datepicker.min.css",
"~/Content/cs-select.css",
"~/Content/cs-skin-border.css",
"~/Content/themify-icons.css",
"~/Content/flaticon.css",
"~/Content/icomoon.css",
"~/Content/flexslider.css",
"~/Content/style.css"
));
BundleTable.EnableOptimizations = true;
}
在布局中:调用如下
@Styles.Render("~/Content/style")
希望对您有所帮助
我在布局中包含这些 css 个文件
<!-- Dropdown Menu -->
<link rel="stylesheet" href="~/Content/superfish.css">
<!-- Date Picker -->
<link rel="stylesheet" href="~/Content/bootstrap-datepicker.min.css">
<!-- CS Select -->
<link rel="stylesheet" href="~/Content/cs-select.css">
<link rel="stylesheet" href="~/Content/cs-skin-border.css">
<!-- Themify Icons -->
<link rel="stylesheet" href="~/Content/themify-icons.css">
<!-- Flat Icon -->
<link rel="stylesheet" href="~/Content/flaticon.css">
<!-- Icomoon -->
<link rel="stylesheet" href="~/Content/icomoon.css">
<!-- Flexslider -->
<link rel="stylesheet" href="~/Content/flexslider.css">
<!-- Style -->
<link rel="stylesheet" href="~/Content/style.css">
现在我想在 bundle
中移动这些文件,所以我这样做了:
public static void RegisterBundler(BundleCollection bundles)
{
bundles.Add(new StyleBundle("~/Content/style.css").Include(
"~/Content/superfish.css",
"~/Content/bootstrap-datepicker.min.css",
"~/Content/cs-select.css",
"~/Content/cs-skin-border.css",
"~/Content/themify-icons.css",
"~/Content/flaticon.css",
"~/Content/icomoon.css",
"~/Content/flexslider.css",
"~/Content/style.css"
));
BundleTable.EnableOptimizations = true;
}
在我的布局中:
@Styles.Render("~/Content/style.css")
但是从这个:
它是这样的:
当我打开这个新的 css 文件(来自浏览器开发工具)时,一些 css
代码丢失了。特别是第一个文件丢失了(superfish.css
),但它与其他文件在同一个文件夹中
我做错了什么?
它可能会混淆并呈现实际的 style.css
而不是包。尝试将包的名称更改为其他名称,即 new StyleBundle("~/Content/main.css")
。此外,您可能使用了错误的渲染 - 它应该是 @Styles.Render("~/Content/style")
(注意删除的 .css
部分)
捆绑是 ASP.NET 4.5 中的一项新功能,可以轻松地将多个文件合并或捆绑到一个文件中。
Bundle class Include 方法采用字符串数组,其中每个字符串都是资源的虚拟路径。
像下面这样更改您的代码:
注意:去掉StyleBundle()里面的文件扩展名
public static void RegisterBundler(BundleCollection bundles)
{
//
bundles.Add(new StyleBundle("~/Content/style").Include(
"~/Content/superfish.css",
"~/Content/bootstrap-datepicker.min.css",
"~/Content/cs-select.css",
"~/Content/cs-skin-border.css",
"~/Content/themify-icons.css",
"~/Content/flaticon.css",
"~/Content/icomoon.css",
"~/Content/flexslider.css",
"~/Content/style.css"
));
BundleTable.EnableOptimizations = true;
}
在布局中:调用如下
@Styles.Render("~/Content/style")
希望对您有所帮助