4

我对所有标记的可读性(以及缩进)有点着迷。

当我调用@Styles.Render("~/content/css")ASP.NET MVC4 项目时,只有第一行维护我的 Razor 模板的缩进。

这是输出:

    <link href="/Content/css/ie.css" rel="stylesheet"/>
<link href="/Content/css/1140.css" rel="stylesheet"/>
<link href="/Content/css/screen.css" rel="stylesheet"/>
<link href="/Content/css/compatibility.css" rel="stylesheet"/>

我希望所有生成的标记都具有与@Styles.Render()调用相同的缩进。

这很容易做到吗?如果是这样,怎么做?

4

1 回答 1

6

理想情况下,渲染的 HTML 会被缩小。格式化标记在开发时非常有用,但如果这是您为用户提供的内容,则会生成更大的文件。

您看到四个样式表的唯一原因是您在调试环境中运行,该环境已禁用您的捆绑。正如我在“使用过时的 javascript 文件的 Scripts.Render ”一文中解释的那样,如果您添加BundleTable.EnableOptimizations = true;到您RegisterBundlesBundleConfig.

    <link href="/Content/css/ie.css" rel="stylesheet"/>
<link href="/Content/css/1140.css" rel="stylesheet"/>
<link href="/Content/css/screen.css" rel="stylesheet"/>
<link href="/Content/css/compatibility.css" rel="stylesheet"/>

现在呈现为:

    <link href="/Content/css?v=Sn3f8Vf56Sr9k0EreIZnouVoGt2cfrd41" rel="stylesheet"/>

所以是的,在开发过程中,它不会保持你的缩进,但是一旦你发布它就会是你想要的。

于 2013-01-30T00:06:54.607 回答