我正在使用Xmlwriter方法编写html文档。添加元素时,它会自动在它们之间插入crlf换行符,那里没有问题。
[在某些时候,当我想在内部文本中添加一些标签时:每次得到的内容都是crlf,这绝对是不希望的。
我可以在元素之间没有换行符的情况下生活,但我无法在xmlwriter中找到可以给我提供此设置的设置...据我所知,.NewLineHandling仅处理文本中的换行符,而不处理自动在文本之间插入的换行符元素。
这是我的设置:
With ReportSet 'XML/HTML file writing settings
.Encoding = Text.Encoding.UTF8
.Indent = True
.IndentChars = vbTab
.OmitXmlDeclaration = True
.NewLineHandling = Xml.NewLineHandling.None
End With
这是我绝对不希望元素之间换行的地方:
For Each section As DiffLib.DiffSection In test
If section.IsMatch Then
cp = EltCnt(k).Substring(n, section.LengthInCollection1)
Report.WriteString(cp)
Else
rmv = EltCnt(k).Substring(n, section.LengthInCollection1)
add = EltCntR(k).Substring(o, section.LengthInCollection2)
With Report
.WriteStartElement("SPAN")
.WriteAttributeString("style", "background-color: #ffcccc; text-decoration: line-through;")
.WriteString(rmv)
.WriteEndElement()
.WriteStartElement("SPAN")
.WriteAttributeString("style", "background-color: #ccffcc;")
.WriteString(add)
.WriteEndElement()
End With
End If
n += section.LengthInCollection1
o += section.LengthInCollection2
Next
所以:标签之间应该没有换行符吗?
没关系,浏览器比我更聪明,只需忽略那些令人讨厌的换行符...无需删除它们。