W3C 不再维护多语言标记?
W3C no longer maintains polyglot markup?
W3C has ended support for the polyglot markup. 那么我是否必须将我的站点转换为使用常规 HTML5 而不是 XHTML?他们放弃这个概念将如何影响现有网站?我想要一个完全有效的标记,如果该代码与标准冲突,我将不得不删除它。
像往常一样,在对 XHTML 没有任何真正理解的情况下,对 X 的评论更加猛烈。
- XHTML 使用 XML 解析器。
- HTML 使用 HTML 解析器。
- XML 解析器严格,是一个对错误容忍度低的应用程序。
- HTML 解析器很轻松,不会介意您潜艇上的屏蔽门是否打开。
您可以并且应该使用可用的最严格的工具。在 PHP 中的示例中,您应该 始终 检查变量是否 isset
。为什么?黑客将从表单中删除 input
元素,提交表单,然后尝试查看服务器会发送哪些错误消息。但是,如果您降低 PHP 错误消息的严格程度,您会认为一切都很好。
我看到一个人 三天 都在为为什么只有 Safari 无法正确呈现某种样式而苦恼。如果他使用 XML 解析器,该页面将(在 Firefox 中)完全失败,并且他会收到一条错误消息,指出 确切 错误是什么,它在哪一行on 以及该行的什么列(其他浏览器呈现该行,因此默认情况下使用 Firefox 进行测试)。他的错误?他缺少一个围绕他的属性的双引号;他潜艇上的纱门大开。
这并不意味着您不能使用 HTML5,因为我们在这里讨论的是语法。理想情况下,您应该使用 XHTML5,HTML5 使用 XML 解析器。它并没有解决所有问题(示例中重复 id
属性值),尽管它需要您在更高级别上进行编码。
是的,IE8 不支持 XHTML(它有点支持 XML),但甚至不值得考虑支持 IE8。坦率地说,它是唯一拥有 any "significant" 市场份额但不支持 XHTML 的浏览器,但这并不意味着您不能进行内容协商:
<?php
if (stristr($_SERVER['HTTP_ACCEPT'],'application/xhtml+xml'))
{
header('Content-Type: application/xhtml+xml');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
}
?>
请记住,如果 IE8 看到 XML 声明,那么它会以怪癖模式呈现,尽管截至 2016 年这是一个有争议的问题,因为它不再是值得支持的浏览器,除非你作为专门处理该浏览器的专家。
我的整个平台都使用 XHTML5,它大大改进了标准、开发时间和技能组合。总是质疑那些反对做需要更多技巧的事情的人的诚信,这就是为什么存在一毛钱一打的说法的原因。
如果您正在寻找一种快速适应 XML 解析器用法的方法,但没有时间替换数十个或数百个 <br>
示例,我强烈建议您考虑 Advanced Find and Replace。选择一个目录、一种或多种文件类型(例如 *.php;*.css;*.xml
)和您要查找的代码,然后选择要替换的内容。此外,它实际上通过 Linux 的原生 grep
命令通过 Wine 模拟运行得更快,而且超级便宜。不过,请务必小心如何进行大量查找和替换,代码的白色-space 越严格越好,并且始终先备份!
W3C has ended support for the polyglot markup. 那么我是否必须将我的站点转换为使用常规 HTML5 而不是 XHTML?他们放弃这个概念将如何影响现有网站?我想要一个完全有效的标记,如果该代码与标准冲突,我将不得不删除它。
像往常一样,在对 XHTML 没有任何真正理解的情况下,对 X 的评论更加猛烈。
- XHTML 使用 XML 解析器。
- HTML 使用 HTML 解析器。
- XML 解析器严格,是一个对错误容忍度低的应用程序。
- HTML 解析器很轻松,不会介意您潜艇上的屏蔽门是否打开。
您可以并且应该使用可用的最严格的工具。在 PHP 中的示例中,您应该 始终 检查变量是否 isset
。为什么?黑客将从表单中删除 input
元素,提交表单,然后尝试查看服务器会发送哪些错误消息。但是,如果您降低 PHP 错误消息的严格程度,您会认为一切都很好。
我看到一个人 三天 都在为为什么只有 Safari 无法正确呈现某种样式而苦恼。如果他使用 XML 解析器,该页面将(在 Firefox 中)完全失败,并且他会收到一条错误消息,指出 确切 错误是什么,它在哪一行on 以及该行的什么列(其他浏览器呈现该行,因此默认情况下使用 Firefox 进行测试)。他的错误?他缺少一个围绕他的属性的双引号;他潜艇上的纱门大开。
这并不意味着您不能使用 HTML5,因为我们在这里讨论的是语法。理想情况下,您应该使用 XHTML5,HTML5 使用 XML 解析器。它并没有解决所有问题(示例中重复 id
属性值),尽管它需要您在更高级别上进行编码。
是的,IE8 不支持 XHTML(它有点支持 XML),但甚至不值得考虑支持 IE8。坦率地说,它是唯一拥有 any "significant" 市场份额但不支持 XHTML 的浏览器,但这并不意味着您不能进行内容协商:
<?php
if (stristr($_SERVER['HTTP_ACCEPT'],'application/xhtml+xml'))
{
header('Content-Type: application/xhtml+xml');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
}
?>
请记住,如果 IE8 看到 XML 声明,那么它会以怪癖模式呈现,尽管截至 2016 年这是一个有争议的问题,因为它不再是值得支持的浏览器,除非你作为专门处理该浏览器的专家。
我的整个平台都使用 XHTML5,它大大改进了标准、开发时间和技能组合。总是质疑那些反对做需要更多技巧的事情的人的诚信,这就是为什么存在一毛钱一打的说法的原因。
如果您正在寻找一种快速适应 XML 解析器用法的方法,但没有时间替换数十个或数百个 <br>
示例,我强烈建议您考虑 Advanced Find and Replace。选择一个目录、一种或多种文件类型(例如 *.php;*.css;*.xml
)和您要查找的代码,然后选择要替换的内容。此外,它实际上通过 Linux 的原生 grep
命令通过 Wine 模拟运行得更快,而且超级便宜。不过,请务必小心如何进行大量查找和替换,代码的白色-space 越严格越好,并且始终先备份!