将WriteBeginTag和RenderBeginTag混合在同一代码中有什么问题吗?

我正在为非标准浏览器(Polycom Microbrowser)生成XHTML。我想使用XhtmlTextWriter,但它忽略了表上的border属性。这通常是正确的事情,因为你应该使用CSS来设置边框。唉,Polycom不支持CSS。 因此,当我渲染开始和结束表标签时,我需要使用HtmlTextWriter.WriteBeginTag / WriteEndTag而不是HtmlTextWriter.RenderBeginTag / RenderEndTag。
    protected void RenderTableBegin(HtmlTextWriter writer)
    {
        //writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
        //writer.RenderBeginTag(HtmlTextWriterTag.Table);
        writer.WriteBeginTag("table");
        writer.WriteAttribute("border", "0");
        writer.Write(HtmlTextWriter.TagRightChar);
    }

    protected void RenderTableEnd(HtmlTextWriter writer)
    {
        writer.WriteEndTag("table");
        //writer.RenderEndTag();
    }
我的代码中的其他地方,我正在使用HtmlTextWriter.RenderBeginTag / RenderEngTag。混合这些是否有任何已知问题?我可以,只要我使用匹配的电话?     
已邀请:
我不相信存在问题,但它呈现标签的方式有所不同。如果你想控制进程,你也可以在writer.Write语句中自己渲染整个HTML。
writer.Write("<table border="0">");
如果您遇到问题,只需确保最终输出。我知道最大的区别在于渲染过程的发生方式(对于渲染开始标记,必须先添加属性,而writebegintag会在您之后添加属性)。 HTH。     

要回复问题请先登录注册