在 ASP.Net 中使用 Razor 生成多个 CSS class 名称
Generating multi CSS class names with Razor in ASP.Net
我需要使用 Razor 在视图中生成多个 CSS class 名称,但是 Razor 处理白色 space 有点棘手
<footer class=@HtmlHelpers.TruthyValueSelector(false,"footer","footer footer--no--border">
</footer>
我的辅助方法:
public static string TruthyValueSelector(bool condition, string firstParameter, string secondParameter)
{
if (condition)
return $"{firstParameter}";
return $"{secondParameter}";
}
当我检查元素时,页脚 css class 是:class="footer" footer--no--border=""
当然,这是行不通的。我尝试使用 C# 和 Razor 干净地处理这种情况,但没有成功。我如何在 Razor 中解决这个问题?
您可以只使用三元运算符:
<footer class="@( someBooleanValue ? "footer" : "footer footer--no--border" )">
</footer>
这在我的机器上呈现如下(当 someBooleanValue
为 false 时):
<footer class="footer footer--no--border">
</footer>
我需要使用 Razor 在视图中生成多个 CSS class 名称,但是 Razor 处理白色 space 有点棘手
<footer class=@HtmlHelpers.TruthyValueSelector(false,"footer","footer footer--no--border">
</footer>
我的辅助方法:
public static string TruthyValueSelector(bool condition, string firstParameter, string secondParameter)
{
if (condition)
return $"{firstParameter}";
return $"{secondParameter}";
}
当我检查元素时,页脚 css class 是:class="footer" footer--no--border=""
当然,这是行不通的。我尝试使用 C# 和 Razor 干净地处理这种情况,但没有成功。我如何在 Razor 中解决这个问题?
您可以只使用三元运算符:
<footer class="@( someBooleanValue ? "footer" : "footer footer--no--border" )">
</footer>
这在我的机器上呈现如下(当 someBooleanValue
为 false 时):
<footer class="footer footer--no--border">
</footer>