HTML版本选择
在开发新的基于Web的应用程序时,我们应瞄准哪个版本的html?
编辑:
很酷,我只是想从别人那里得到一种感觉,我倾向于在自己的工作中使用XHTML 1.0 Strict,而当其他人参与内容创建时,我倾向于使用Transitional。
我将第一篇XHTML 1.0 Transitional帖子标记为"正确答案",但坚信那时给出的所有答案同样有效。
解决方案
回答
我会为XHTML Transitional 1.0拍摄。仍然有一些不喜欢XHTML严格的细微差别,而且我现在看到的大多数编辑器都会为我们提供适当的提示,以确保事情做对了。
回答
无论我们使用哪种流行的标准,呈现页面的任何内容都可以。 XHTML更为严格,可能"更好",但是我看不出使用一种标准比另一种标准能带来什么好处。
回答
就个人而言,我更喜欢XHTML 1.0 Transitional。
XHTML是基于XML的,因此它可以简化解析,并且我们还可以使用大多数IDE的XML组件以编程方式查询和插入内容。
与通常可能是PITA的严格相比,过渡性的严格程度不如严格,这使得操作起来相对容易。过渡性与严格性的比较
1.0比1.1更"兼容",而1.1似乎仍在发展中。
回答
Dillie-O对XHTML 1.0 Transitional的回答是正确的,但我建议我们为XHTML 1.0 Strict拍摄,如果我们确实需要Strict不允许的某些功能,则只能使用Transitional。
回答
HTML 4.01. 除了我们只想在"晦涩"的Web浏览器上运行的实验性或者学术性问题外,绝对没有理由使用XHTML。
即使对于那些浏览器,XHTML Transitional也是毫无意义的,所以我不确定为什么有人会为此目的。实际上,令人震惊的是许多人会建议这样做。
我说针对HTML 4.01的目标是最可预测的,但是Teifion确实是对的,"任何呈现我们页面的内容都可以做到"。
针对Michael Stum:
XHTML is XML based, so it allows easier parsing and you can also use the XML Components of most IDEs to programatically query and insert stuff.
这当然是不正确的。网路上的许多XHTML(如果不是大多数的话)都不符合XML的有效性(也不一定非要以XML的形式传送)。尝试在处理XML时将其视为XML,这将使我们头疼不已。例如,Stack Overflow上的此页面将由于许多无效的XML工具而产生错误,这些工具具有无效的标记。
回答
我的目标是XHTML 1.0 Trans。最好保持一致,这样,当浏览器中的错误被修复时,我们就不会突然不停地试图找出实际需要更改的内容。
在我看来,1.1很烂,而2.0已被砸烂给史密斯:我真的需要/想要一个页眉/页脚标签吗?
回答
@麦克风:
虽然我同意不需要使页面呈现有效(毕竟,我们必须保持IE6的兼容性...),但是创建兼容且有效的有效XHTML并不是问题。当人们习惯于HTML 4并使用折旧的标签和属性时,问题就开始了。
仅仅因为Web是一堆废话,并不意味着每个新页面也需要一堆废话。 SO上的大多数验证错误都很琐碎,不应花太长时间进行修复,例如缺少属性的引号。
但考虑到W3C仍然不知道他们要去哪里(请参阅HTML 5),并且某个也生产操作系统的大型浏览器公司也不在乎,因此这可能仍然毫无意义。一个网站也可以发送它的文档类型,因为HTML 1337 Sucks很容易,浏览器仍会尝试呈现它。
回答
每次我都为XHTML Strict而努力。我坚信HTML应该更像XML。如果我们知道XML,并且W3的验证器始终将我们指定在正确的轨道上,那么验证它并不难。
XHTML 2.0正朝着W3长期以来针对语义网的目标迈进。对我来说,XHTML 2.0的最大好处是,Web上的每个符合标准的页面都可以理解为内容,也可以理解为一篇文章(因为这些页面就是文档),因为它们都适用于同一标准。然后,我们将能够构造以完全不同的方式呈现内容的解释器(即浏览器),实际上有成千上万的想法在这里等待着。
回答
关于XHTML的使用,有一些令人信服的警告,主要围绕这样一个事实,即此类文档的mime类型应发送为:
内容类型:application / xhtml + xml
但是IE 6和IE 7不支持此功能,然后网站必须将其发送为:
content-type:text / html
不幸的是,该方法被认为是有害的。
有些人还抱怨这样一个事实,尽管XHTML的目的是使网页可由XML解析器解析,但实际上由于现有网站上的不正确使用,它实际上失败了。
我仍然更喜欢用XHTML 1.0 Strict编写文档,主要是因为挑战,验证程序提供的整洁性和错误检查。我更喜欢语法,因为它使我在标记结束时等方面表现得非常明确。对我来说,这不仅仅是纯粹的技术选择,而是我个人的选择。
回答
不推荐使用XHTML和HTML的过渡风格。它们仅用于不支持CSS的旧用户代理。请参阅DTD中的说明。
W3C建议我们在任何可能的情况下都应使用Strict,而如今这确实是可能的。
过渡版本已在XHTML / 1.1和HTML5中删除。
XHTML / 1.0具有与HTML4完全相同的元素和属性(语义)。 XHTML / 1.0规范甚至没有指定任何元素!除语法外,它指的是HTML4.
此外,如果我们以text / html
的形式发送文档,那么我们将无法使用HTML中不可用的XHTML的任何功能(命名空间,XML DOM),而且很不幸,这是与IE和其他仅HTML兼容所需的浏览器。
在2008年,正确的选择应该是HTML4 Strict:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
但截至2016年,只有一个重要的HTML版本。
<!DOCTYPE html>
回答
如果我们想以HTML兼容的方式使用XHTML 1.0,那很好。但是,请注意,W3C验证器和XHTML DTD对MIME类型以及它们之间的浏览器行为如何不同(如<map>名称/ id匹配)一无所知。 DTD也不了解浏览器如何支持某些元素(例如<embed>)。
这意味着XHTML DTD和验证器不会反映现实,而试图符合现实是没有意义的。
如果我们只想使用XHTML,以便可以使用/>(其中html兼容)关闭某些元素,则只需使用HTML5标记(这样浏览器就处于完全标准模式)。 HTML5允许以HTML兼容的方式使用/>(与在text / html中使用XHTML 1.0标记时必须使用的HTML兼容方式相同)。然后,坚持使用浏览器中有效的方法(我们比某些DTD更了解)。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"/> <title></title> </head> <body> <p>Line1<br/>Line2</p> <p><img src="" alt="blank"/></p> <p><input type="text"/></p> <p><embed type="application/x-something" src=""/></p> </body> </html>
然后,使用http://validator.nu/至少确保其格式正确。
回答
我认为使用XHTML还是纯HTML都不重要。这里的最终目标是通过可预测的渲染降低维护成本并快速开发。只要我们具有验证代码,就可以通过使用xhtml或者html来获取此信息。我什至听说过最好以快速模式为目标,因为新版本的浏览器不会更改快速模式,因此维护很容易。
最后,由于充分的原因,所有这些都变成了标签汤,因为让Web应用程序开发人员编写无错误的html意味着要求他们编写无错误的代码。验证器没有帮助,因为它们仅验证初始页面视图。这也是为什么我从未见过xhtml的要点用作静态站点以外的任何内容的xml的原因。由于xml令人震惊,Web应用程序开发人员需要为自己的Web应用程序提供服务的傲慢程度。
回答
HTML 4.0 Strict或者ISO HTML。
回答
如果我们拥有像其他任何XML文档一样生成XHTML的工具,请使用XHTML。但是,当我们只使用纯文本模板,文本串联等时,可以使用旧的HTML 4.01.
浏览器现在开始支持这个已有10年历史的标准。
重要提示:避免在生成XML时被称为bozo