我的页面上有简单的文字。
<asp:Literal ID="litDescription" runat="server"></asp:Literal>
当我尝试将以下文本设置为文字时:
<p><div>Some Text</div></p>
在浏览器的标记中我看到了
<p></p>
<div>Some Text</div>
<p></p>
为什么有两个'p'标签?我需要
<p><div>Some Text</div></p>.
答案 0 :(得分:8)
P中的div是无效的html。 我不认为.net正在制作
。 我认为它来自你的浏览器。
答案 1 :(得分:1)
在<div>
标记内添加<p>
标记是错误的语法。它应该是<div><p>Some Text</p></div>
:
litDescription.Text = "<div>Some Text</div>";
然而,这仍然是错误的语法。如果您使用div将内联样式应用于<p>
标记的一部分,请使用<span>
代替<div>
。
litDescription.Text = "Some Text";
是正确的html语法。
答案 2 :(得分:0)
更符合asp.net Web表单的服务器端控制结构的不同方法。
<p><div>
<asp:Literal id=DescriptionLiteral runat="server" />
</div></p>
// c# code:
DescriptionLiteral.Text = "Some Text";
请注意,<div>
标记中嵌套的<p>
标记无效HTML标记。