gpt4 book ai didi

使标记符合 XHTML 的 Javascript 或正则表达式解决方案

转载 作者:行者123 更新时间:2023-11-30 13:38:23 24 4
gpt4 key购买 nike

我的网站中内置了一个内嵌标记编辑器,它应该可以生成符合 XHTML 的标记。但如您所见,它使用已弃用的 font标记和 size属性。

<font style="font-family: Courier New; color: rgb(0, 0, 153);" size="2">
asdfa
<span style="color: rgb(0, 51, 0);">
a
<font size="5">fds</font>
</span>
</font>

在其他浏览器上,它会生成 <span class="Apple-style-span" style="font-size: xx-large;">而不是 <font size="5">

是否有 Javascript/Regex 解决方案来获取第一组标记并将其替换为使用 style 的 XHTML 兼容标记?属性和 span标签。提前致谢!!

(ps.jQuery也可以用)

最佳答案

上面的标记在 XHTML 1.0 Transitional 中完全有效。

是否弃用元素,如 <font>是否使用 XHTML 或 HTML 语法是一个完全正交的问题。 XHTML 1.0 只不过是 XML 语法中 HTML 4.01 的重述:因此,就像 HTML 4 一样,有 Transitional 和 Strict 变体。

<font size="5"><span class="Apple-style-span" style="font-size: xx-large;">在语义上同样无用。如果您希望标记使用一组在您的站点上下文中有意义的已定义元素和类,则必须让编辑器使用这些元素和类,而不是纯粹基于视觉格式。

您可以解析 XHTML 并在后面的步骤中对其进行更改,以尝试使其看起来更好。但是如前所述,正则表达式根本不是这样做的合适工具。您将需要一个 XML 解析器,然后您将修复元素和属性,然后将其重新序列化为 XHTML。在服务器端执行此操作是明智的,因为在客户端获取 XML 解析器有点棘手,如果您要清理非白名单,则无论如何都需要在服务器端执行此操作元素和属性。

关于使标记符合 XHTML 的 Javascript 或正则表达式解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3620385/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com