Asp.net 什么';s占位符和<;div/>;?
在ASP.NET项目中,我有以下HTML:Asp.net 什么';s占位符和<;div/>;?,asp.net,html,placeholder,Asp.net,Html,Placeholder,在ASP.NET项目中,我有以下HTML: <asp:PlaceHolder ID="plcTitle" runat="server"></asp:PlaceHolder> <div id="divStrapline" runat="server" /> 他们俩是一回事吗?两者中有一个比另一个好吗?为什么?该不会生成div标记 占位符Web服务器控件没有任何可见的输出,在运行时添加控件时用作占位符。空的div标记(以及其他容器标记,如p等)在打开元素本身中
<asp:PlaceHolder ID="plcTitle" runat="server"></asp:PlaceHolder>
<div id="divStrapline" runat="server" />
他们俩是一回事吗?两者中有一个比另一个好吗?为什么?该
不会生成div
标记
占位符Web服务器控件没有任何可见的输出,在运行时添加控件时用作占位符。空的
div
标记(以及其他容器标记,如p
等)在打开元素本身中关闭(如在
而不是
)可能会导致某些浏览器出现问题。浏览器可能忽略一个事实,即它是用<代码> /<代码>关闭的,并将其视为一个新的div,从而打破后续的标记。
我曾经在Firefox上遇到过这样一个问题:我用python中的MinidomXML库生成html,它将空div表示为
——它打破了我的标记的剩余部分,使后续div变得混乱。最后,我将注释节点添加到空元素中,以确保它们具有单独的结束标记
if (this.TitlePanel != null)
{
plcTitle.Controls.Add(this.TitlePanel);
}
if (this.Strapline != null)
{
divStrapline.Controls.Add(this.Strapline);
}