ASP.NET 添加了额外的结束标记

本文关键字:结束 NET 添加 ASP | 更新日期: 2023-09-27 17:56:05

可能的重复项:
ASP.net 有效呈现元标记

这是我.aspx文件中:

<meta name="viewport" runat="server" content="width=380,height=575" id="viewPort" />

这是在浏览器中呈现的 HTML 文件上显示的内容:

<meta id="viewPort" name="viewport" content="width=380,height=575"></meta>

实际出现的内容不符合HTML5标准。

知道为什么会改变吗?

ASP.NET 添加了额外的结束标记

这种行为显然是 ASP.NET 的设计:

解决方法 1:将以下代码添加到 page_load 事件中:

HtmlMeta keywords = new HtmlMeta();
keywords.Name = "keywords";
keywords.Content = "one two trhee;
Header.Controls.Add(keywords);

请参阅: ASP.net 有效呈现元标记

解决方法 2:

protected internal override void Render(HtmlTextWriter writer)
{
    if (base.EnableLegacyRendering)
    {
        base.Render(writer);
    }
    else
    {
        writer.WriteBeginTag(this.TagName);
        this.RenderAttributes(writer);
        writer.Write(" />");
    }
}

请参阅: Asp.net 在 HTML 4.01 中错误地关闭元标记