在一次采访中,我被问到了一个我从未想过的问题,即"我们已经拥有满足编写网页所有要求的HTML,那么XHTML的需求是什么?"
我用Google搜索了很多文章并阅读了很多文章,但我无法理解为什么会引入XHTML.请向我解释.
我想知道我是否应该对标记语言感到烦恼,只要我生成有效的标记.
我读过的文章指出HTML是最好的选择,它们直接来自马的嘴(浏览器实现者!):
詹姆斯·班纳特(James Bennet)的其他文章提出了另一个观点,即如果你不是以XML格式提供XHTML,那么你不需要XHTML而是HTML.
所以我认为,如果我想触发标准兼容模式,我应该只使用HTML严格验证.但至少在最现代的浏览器(也就是除IE6之外的所有浏览器)中情况已经不是这样了:如果你有有效的XHTML Strict,你仍会触发标准兼容模式,因此,只要我生成有效的标记,为什么要这么麻烦?
这只是我现在的好奇心.在Eclipse中,这是在新的Facelet模板<head>上定义的部分,但是对于大多数模板来说是同样的事情:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<head>
..
</head>
Run Code Online (Sandbox Code Playgroud)
我想在其上使用更清晰的代码,所以我改为:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<head>
..
</head>
Run Code Online (Sandbox Code Playgroud)
它在开发中运行良好,但我想知道这种方法是否会在未来通过许多浏览器或设备(移动)提出任何问题.
我对IE的XHTML兼容性进行了激烈的争论.唯一的问题是,我不确定那个人是不是在拖钓.
基本上他声称IE完全没有XHTML兼容性,并且具有定义的XHTML doctype的文档在作为内容类型text/html提供时绝对没有任何意义,无论使用何种浏览器.
我不相信这一点,消息来源说不然,但我错了?
编辑:忽略IE,它是否仍然意味着当在HTML文档中定义XHTML时它不是XHTML?喜欢那个人建议的?我目前的理解是XHTML通常包含在HTML内容类型中.这意味着从技术上讲,除非使用正确的内容类型,否则您可以说XHTML仅仅是HTML.但它仍然是XHTML语法,因此有点令人困惑.
您可以在digitalpoint论坛上找到有问题的主题.