【发布时间】:2014-08-29 06:31:59
【问题描述】:
设置动态正文类的最佳方法是什么?试过了:
<body class="@Umbraco.Field("pageTitle", altFieldAlias: "pageName")">
但这会返回页面名称,如:
<body class="Some Page Name">
【问题讨论】:
标签: asp.net asp.net-mvc umbraco umbraco7
设置动态正文类的最佳方法是什么?试过了:
<body class="@Umbraco.Field("pageTitle", altFieldAlias: "pageName")">
但这会返回页面名称,如:
<body class="Some Page Name">
【问题讨论】:
标签: asp.net asp.net-mvc umbraco umbraco7
参考您的示例 - 这是预期的结果,因为您从文档中请求 pageTitle 属性数据。由于您显示的原因,这并不适合类名 - 它可以包含空格和无效字符。
要使用的属性取决于您需要哪种 css 钩子。您可以使用 DocumentTypeAlias,因为它没有空格但更通用,或者如果您需要每页一个类,您可以使用包含您知道是唯一的文档 ID 的字符串。您不能单独使用 id,因为我很确定 css 类不能以数字值开头。
我必须提供的一些 v6 安装示例,但我认为在 v7 中仍然相关:
使用文档类型别名:
<body class="@Model.Content.DocumentTypeAlias.ToLower()">
使用文档 ID 来实现唯一性:
<body class="@string.Concat("pg-", Model.Content.Id)">
从当前文档中获取包含要添加的类的属性:
<body class="@Umbraco.Field("bodyCssClasses")">
【讨论】:
<body class="@string.Concat("pg-", Model.Content.Id)">