我是Asp.Net的新手,我在使用布局时遇到了问题。我有一个div,里面是一个p标签,取决于嵌入的c#flip是真还是假我希望它是一个空的p标签或带有内容的p标签。
问题:当div标签内没有任何内容时会发生这种情况。它会产生很多空间,阻止我使用:empty css标签,因为里面有技术内容。
我的代码是这样的:
<div>
@if (flip = true){
<p>text</p>
}
else{}
</div>
答案 0 :(得分:1)
尝试使用Razor的“文字”标签之一(如此处所述:How to use Razor like asp:Literal?):
<div>@Html.Raw(flip ? "<p>text</p>" : "")</div>
并确保将<div>
保留在一行。
使用与@:
类似的语法可能有更好的方法,但我无法回想起手边的语法。
更新:如果您要在div
和中添加大量内容,那么您只关心css :empty
选择器,你可能最好只为div
添加一个专门的类(如下所述:How to use ? : if statements with Razor and inline code blocks):
<div class="col-md-12 game @(flip ? "" : "empty")">
然后您可以使用您已经使用的语法(@if(flip){}
)