我一直在使用HTML已经有一段时间了,最近我脑海中浮现出一个问题,即什么时候给出标签
<input type = "text" name="c-id" />
<input type =text name=c-id />
有或没有引号没有区别,当使用V-Studio时,这个IDE不会自动输出引号,但是在使用Dreamweaver的时候如果我没记错的话它会自动输出引号......
我想要知道的是,在什么时候,缺少引号会产生影响或产生问题,什么是最佳实践,总是引用或引用...
P.S。这个问题很有可能在之前被问过,但没有出现在搜索中
答案 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)