HTML - HTML标签中双引号的重要性

时间:2013-04-05 06:46:54

标签: html tags double-quotes

我一直在使用HTML已经有一段时间了,最​​近我脑海中浮现出一个问题,即什么时候给出标签

<input type = "text" name="c-id" />
<input type =text name=c-id />

有或没有引号没有区别,当使用V-Studio时,这个IDE不会自动输出引号,但是在使用Dreamweaver的时候如果我没记错的话它会自动输出引号......

我想要知道的是,在什么时候,缺少引号会产生影响或产生问题,什么是最佳实践,总是引用或引用...

P.S。这个问题很有可能在之前被问过,但没有出现在搜索中

4 个答案:

答案 0 :(得分:1)

当属性值包含空格,换行符,换页符或制表符时,它会有所不同,因为如果值未包含在引号中,则属性值将以这些字符中的任何一个结束。

从IDE的角度来看,当属性值不包含其中一个空格字符时,是否要添加引号只是一个偏好问题。

答案 1 :(得分:1)

在XHTML语法中,始终需要引号(但您也可以使用单引号,即“撇号”)。如果页面以text / html内容类型提供,则无关紧要,因为它几乎总是如此:浏览器将其解析为草率HTML,而不是真正的XHTML。但是,如果页面以XML内容类型提供,或者在需要XHTML或其他XML的程序中打开,则缺少引号会导致Draconian错误处理:仅显示错误消息,而不显示内容。

在示例中,使用XHTML语法:关闭“&gt;”之前的“/”属于XHTML,而不是HTML。在这方面编写XHTML并不一致,这一点没什么意义。

在HTML语法中,正式规则取决于HTML版本。 HTML5比HTML 4.01更宽松。例如,<a href=/foo/bar/ title=What???>是有效的HTML5,但不是有效的HTML 4.01。这主要在验证中很重要,取决于您希望验证哪个版本的HTML(即,您最常尝试遵守哪个版本)。在本期中,HTML5反映了浏览器的做法:浏览器长期以来比HTML 4.01更宽松。

HTML5 rules,仅当属性值包含以下任意字符时才需要引号(但始终允许):空格,制表符,换行符,换页符,回车符,引号(“),撇号('),等号(=),小于号(&lt;),大于号(&gt;)或坟墓(`),或为空。

此外,还有意见以及编码风格指南和其他建议。大多数考虑这些问题的人显然倾向于总是在属性值周围加上引号的“安全”方式。有些人认为引号提高了代码的可读性;其他人认为他们减少了它。

答案 2 :(得分:0)

不将您的值放入引号可能会导致一些问题,即您无法为元素提供多个css类。浏览器只能理解第一个值,页面不会通过验证。

您应始终将您的值放入引号中。标记更容易阅读,您不会遇到一些意外的浏览器行为。

答案 3 :(得分:0)

对我来说,任何提高代码/标记(重新)可读性的做法都值得养成习惯,并且对属性值有引号可以将一个属性与另一个属性明显分开(再次可读性)。

在技术方面,某些属性值包含空格,如果没有这些引号,整个标记可能无效。想到的那些:img的alt,多个类值,标题(用于工具提示),一个带有等号的url的href(没有引号,href中的第一个相等是注定的),等

here与SO中几乎是同一个问题。

-

感谢Alohci启发我。我还不能投票。