2

我注意到 IE9、Firefox 和 Chrome 都允许您使用任意 html 标签并使用 CSS 设置这些标签的样式。

这是我用来测试的示例 HTML 文件,它适用于所有现代浏览器:

<html>
    <head>
        <title>Test</title>
        <style>
            h3 { font-family: Arial; }
            animals { padding: 20px; display: block; background-color: #eee; }
            dog { background-color: brown; color: white; display: block; padding: 10px; }
        </style>
    </head>
    <body>
        <animals>
            <dog>
                <h3>Dog</h3>
            </dog>
            <cat>
                <h3>Cat</h3>
            </cat>
            <giraffe>
                <h3>Giraffe</h3>
            </giraffe>
        </animals>
    </body>
</html>

除了向后兼容性之外,如果现代浏览器支持自定义标签,为什么我不应该使用它们(结合现有的官方标签规范)使我的标记在语义上与内容、应用程序元素等更相关?

4

2 回答 2

3

如果您坚持已建立的 HTML5 标签,您的页面将更好地与浏览器以外的其他工具一起使用,尤其是屏幕阅读器。唯一能理解你的新语义的程序就是你的程序,你也可以编写你的程序来理解<ul class='animals'>

当人们在 HTML 中争论“更好的语义”时,他们的意思是“选择最能代表含义的标签”,通常不是表格。他们并不是说,“发明一个只有你才能理解的标签”。

于 2012-06-19T12:56:44.813 回答
0

我仍然收到一些网站在IE6上中断的错误报告。虽然 IE9 是朝着正确方向迈出的一步,但 IE 用户传统上拥有巨大的发展势头,而且旧版本在本应被埋没几十年后才被使用。

您可能需要记住的另一个问题是前向兼容性。未来的标准可能会为您以通用方式使用的标签引入不需要的行为。

然后是一些人对所有代码都通过各种验证的永恒愿望,这当然是不可能的,除非您实际使用 XHTML 并注意让您的标记实际验证为 XML...

于 2012-06-19T13:01:35.240 回答