为什么不';难道我们没有CSS中的//注释吗?

为什么不';难道我们没有CSS中的//注释吗?,css,theory,Css,Theory,可能重复: 在CSS中,只有一种方法可以创建注释:/*我是注释*/ 问题是它不可嵌套 有人知道为什么我们没有像/这样的可选注释语法吗?它不在规范中,而且由于CSS被广泛使用和支持,因此添加它几乎是不可能的。你不能仅仅发布一个新的规范,然后期望所有浏览器都能神奇地支持它。IE6是一款已有10多年历史的浏览器,目前仍在广泛使用,因此您可以放心地认为,即使对规范进行了这一补充,也需要10年的时间才能得到足够的支持。/-风格注释的问题在于它们不能伸缩-与新的HTML标记不同,新的HTML标记可以安全地

可能重复:

在CSS中,只有一种方法可以创建注释:
/*我是注释*/

问题是它不可嵌套


有人知道为什么我们没有像
/
这样的可选注释语法吗?

它不在规范中,而且由于CSS被广泛使用和支持,因此添加它几乎是不可能的。你不能仅仅发布一个新的规范,然后期望所有浏览器都能神奇地支持它。IE6是一款已有10多年历史的浏览器,目前仍在广泛使用,因此您可以放心地认为,即使对规范进行了这一补充,也需要10年的时间才能得到足够的支持。
/
-风格注释的问题在于它们不能伸缩-与新的HTML标记不同,新的HTML标记可以安全地忽略,只要文档的其余部分有意义,添加
/
-注释将破坏不知情的用户代理

简而言之,我们没有它,因为我们没有


如果这对你来说真的很重要,那么编写一个脚本或宏,将
/
-注释转换为
/***/
-注释,并在运行web应用程序之前应用它。

有一种方法可以在css中添加//注释。如果您使用SASS/compass。 我真的很喜欢使用compass,因为它提供了我错过的css的一切,比如函数、变量等等

这里是指向compass和底层SASS语言的链接


Compass非常好,因为您只有一个在后台运行的程序,可以将您的SASS代码编译成真正的css,因此您的工作流与其他文件(SCS或SASS)一样正常,并且具有非常扩展的功能

我认为真正的答案是CSS像对待任何其他空格一样对待换行符,所以用换行符结尾的注释是没有意义的。这来自CSS1规范:

对于任何版本的CSS,CSS样式表都由语句列表组成。有两种类型的语句:at规则和规则集。语句周围可能有空格(空格、制表符、换行符)


当然,这在缩小的背景下也很有意义,正如这里提到的:。

这里回答了这个问题:。而且,似乎有一个“真实”的答案:缩小。CSS中有一个“C”,但没有一个“C++”。所以自然地,它支持C风格的多行评论,而不是C++单行注释:)Cody Gray,我不同意。代码>/-正如海报所说,注释非常方便,因为它们不会干扰其他注释。而且,它们更容易写。而且,所有其他使用
/**/-我知道的注释也有
/
-注释。@Spiny Norman-缩小点是保持事物原样的一个很好的论据,但在最初构思CSS规范时,缩小不是一个问题,因此这不能解释最初的设计决策。(Javascript也有同样的理由,但这确实支持//注释)@Spudley是的,我同意。我认为更多的是关于CSS,而不是区分换行符和其他空格。另见下文我的答案。