go x/net/html: 文本节点已移出< table>

9rnv2umw  于 6个月前  发布在  Go
关注(0)|答案(2)|浏览(56)

你正在使用的Go版本是什么(go version)?
Playground, Go 1.13

这个问题在最新版本的发布中是否会重现?
是的

你正在使用什么操作系统和处理器架构(go env)?
Playground

你做了什么?
https://play.golang.org/p/UmY2tC6CML5

你期望看到什么?
输出HTML应该与输入相同。

你看到了什么?
test文本节点被移动到了<table>之前。
是的,我知道直接在<table>内部放置一个文本节点是不正确的。
然而,我正在处理一个包含来自https://github.com/flosch/pongo2的模板指令的HTML文档。
我的目标是在渲染模板之前对HTML进行一些更改。
即使HTML不是严格有效的,能否不移动这些文本节点?
有其他解决方法吗?

pu3pd22g

pu3pd22g2#

行为看起来像预期的那样工作,因为我们的解析器会严格遵循whatwg解析/分词算法来解析给定的字符串。你也可以通过使用谷歌浏览器来检查,你会看到文本节点在表格元素之前被移动了。
我可能不理解这个解决方法,但是以下示例是否符合你的期望?
https://play.golang.org/p/duwjtPFno0A
这将直接调整解析树中的文本节点。

相关问题