在手写HTML时,我总是使用单引号。我使用了很多渲染的HTML,它们总是使用双引号。这使我能够确定HTML是手工编写的还是生成的。这是个好主意吗?

这两者之间有什么区别?我知道它们都可以工作,而且所有现代浏览器都支持它们,但在不同的情况下,其中一种真的比另一种更好吗?


当前回答

如果你正在编写asp.net,那么偶尔你必须在Eval语句中使用双引号,在值分隔中使用单引号——这主要是为了让c#内联代码知道它在Eval容器中使用的是字符串而不是字符。就我个人而言,我只使用其中一种作为标准,而不是混合使用,这样看起来很乱。

其他回答

这里有很多很有见地的回复!足以让任何人做出明确的个人决定。

我只想指出一件对我来说一直很重要的事。 对此你要持保留态度!

双引号适用于具有多个相位的字符串,如“one two”,而不是单引号用于“one”或“two”。这可以追溯到C和c++时代。 (参考这里或自己在线搜索)。

这就是真正的区别。

有了这个原则(这是不同的),解析成为可能,如“{{'a','b'},{'x','y'}}或“/[^\r\n]*[\r\n]”(需要与空间无关,因为它是表达式),或更著名的HTML特定的title = "Hello HTML!"或style = "font-family:arial;颜色:# FF0000;“

有趣的是,HTML(来自XML本身)通常采用双引号,这是由于表达式的特征,即使它是单个字符(例如数字)或单个相位字符串。

正如NibblyPig明确指出的那样: 作为第一层和第二层,因为“'a string here'”是有效的,并符合W3标准(适用于web),并且很可能永远不会改变。

为了保持一致性,使用双引号是明智的,但只有根据偏好才完全正确。

如果都是一样的,也许使用单引号更好,因为它不需要按住shift键。按键次数越少=重复劳损的几率越小。

双引号用于字符串(即“这是一个字符串”),单引号用于字符(即'a', 'b'或'c')。根据编程语言和上下文的不同,可以对字符使用双引号,但不能对字符串使用单引号。

HTML并不关心你使用的是哪一个。然而,如果你在PHP脚本中编写HTML,你应该坚持使用双引号,因为你需要转义它们(即“whatever\”),以避免混淆你自己和PHP。

这对html没有区别,但如果你用另一种编程语言动态生成html,那么一种方法可能比另一种更容易。

例如,在Java中,双引号用来表示字符串的开始和结束,所以如果你想在字符串中包含双引号,你必须用反斜杠来转义它。

String s = "<a href=\"link\">a Link</a>"

单引号就不存在这样的问题,因此使用单引号可以使Java中的代码更具可读性。

String s = "<a href='link'>a Link</a>"

特别是当您必须编写具有许多属性的html元素时。(注意,我通常使用jhtml这样的库在Java中编写html,但这样做并不总是实际的)

HTML使用双引号

i.e.

<div class="colorFont"></div>

JavaScript中使用单引号

i.e.

$('#container').addClass('colorFont');
$('<div class="colorFont2></div>');