在页面中,除了xmp,textarea以及js转义外,还有什么办法可以让html标签在不被浏览器解析而正常显示呢? -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

在页面中,除了xmp,textarea以及js转义外,还有什么办法可以让html标签在不被浏览器解析而正常显示呢?

杨冬芳 2016-06-16 10:01:16 1778

如标题内容,请问各位还有什么其他方案吗?谢谢啦~

JavaScript
分享到
取消 提交回答
全部回答(1)
  • 杨冬芳
    2019-07-17 19:40:21

    要符合“内部的html标签不被解析”,我们根据HTML5的标准,分元素类别讨论吧:
    1.Void Elements,如br等。
    他们不允许有内部文本。
    2.Foreign Elements,如svg和mathml的相关标签
    跟xml语法一致,他们内部文本若不想被当作标签解析,只有用和包裹
    3.RCDATA elements:即textarea 和 title。
    他们不能嵌套自身,内部的实体会被转义,内部的<不会被当作tag open解析。
    因此,他们内部的其他标签自然不会被解析。
    4.Raw text elements:即script 和 style。
    他们不能嵌套自身,内部的实体不会被转义,内部的<不会被当作tag open解析。
    因此,他们内部的其他标签自然不会被解析。
    5.Normal elements,普通的元素,基本上上列没有提及的都属于这一列,包括pre和code。
    他们的特点是,内部的实体会被转义,内部的<可能根据上下文,被当作tag open解析。
    他们内部的文本若想展示标签文本而不解析,必须先转义<为<,>为>

    如果目标是让HTML标签文本内容正常显示而不被解析,最简单的方案是嵌入到

    HTML4旧有的有xmp、listing和plaintext类似于HTML5的Raw text elements,可以包含标签而不解析,内部实体不被转义,但是已经在HTML5中废弃。

    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程