微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTML – 浏览器如何分析?

<table border="1">
    <tbody>
        <tr>
            <td>1</td>
            <td>2</td>
        </tr>
        <tr>
            <td>3</td>
            <td>4</td>
        </tr>
    </tbody>
</table>

如果我写这个,浏览器将正常分析.

<!-- <table border="1"> -->
    <tbody>
        <tr>
            <td>1</td>
            <td>2</td>
        </tr>
        <tr>
            <td>3</td>
            <td>4</td>
        </tr>
    </tbody>
<!-- </table> -->

但是我这样写,我发现浏览器会分析它们而不需要任何像string这样的标签.

<tbody>
    <tr>
        <td>1</td>
        <td>2</td>
    </tr>
    <tr>
        <td>3</td>
        <td>4</td>
    </tr>
</tbody>

是一样的

1 2 3 4

解决方法

浏览器会忽略< tbody>,< tr>和< td>标签和相应的结束标签.这在HTML规范中没有规定,因为它们没有定义语法错误文档的解析.但是,在HTML5草案中,有一个描述以与浏览器实际操作相对应的方式定义浏览器行为: Tree construction.

这意味着您无法编写包含例如< tr>的HTML文档.表元素外的元素.浏览器中的HTML解析器根本不构造这样的文档树. (但是,您可以使用客户端编写动态构建此类文档.)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐