【问题标题】:Why do certain tags go a new line when using HtmlTextWriter?为什么某些标签在使用 HtmlTextWriter 时会换行?
【发布时间】:2014-05-22 18:38:39
【问题描述】:

在使用 HtmlTextWriter 时尝试格式化我的 HTML 有点困难。似乎有些标签会自动换行,有些则不会。

有没有办法阻止这种情况发生,以便平等地创建所有标签并将格式完全由我决定?

在我的特殊情况下,我正在为自定义 HTML 站点地图构建 <ul><li>

<ul> 之后的立即标记将换行。 <li> 标签不是这种情况。

如果有人需要澄清,请提出问题。

【问题讨论】:

  • 是的,我们需要澄清一下。你为什么不清楚地展示一些代码,清楚地展示你收到的输出和你期望的结果。

标签: c# formatting htmltextwriter word-wrap


【解决方案1】:

你在使用RenderBeginTag吗?该方法会自动处理一些事情,除其他外,它会在非内联元素中放置换行符(和缩进)(例如 ulspan)。

如果您想手动进行渲染,请改用WriteBeginTag("ul")WriteFullBeginTag("ul")

请注意,WriteBeginTag 仍将处理缩进。但是,如果您只使用 WriteXXX 方法,则可以完全控制它。

不过,这些结尾真的让你感到困扰吗?你确实使用压缩,对吧?开销通常不是很大...

【讨论】:

  • 在 HTML 格式方面,我只是一个坚持不懈的人。当人们查看页面的源代码时,我希望它尽可能具有可读性。
  • @g5insider 并且 删除 空格有帮助吗? =) 无论如何,如果这是您想要的,只需使用WriteXXX 方法,您就可以按照您想要的方式进行格式化。你不能真正改变RenderXXX 的行为——标签类型存储在静态私有字段中,如果你不能自己创建它,重写作者对你没有帮助。
  • 我喜欢格式良好的 HTML。我尽力格式化它,它看起来比以前好多了。我感谢所有的帮助。谢谢!
  • 当我尝试在 Outlook 电子邮件模板的正文上呈现 html 输出时,它没有正确呈现,任何人都可以帮助所有 html 标签、head 标签、div 标签呈现如下 41>Hello World25>12>43>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-21
  • 2014-11-16
相关资源
最近更新 更多