CSS中的HTML评论?

时间:2012-03-21 20:41:30

标签: css

我正在查看Amazon的一些CSS,并注意到他们有HTML注释掉了一大块CSS。我知道Internet Explorer的条件格式有HTML注释,但我在Chrome中查看了这个。它的目的是什么?

哦,我应该注意到这些风格实际上正在应用。

<!-- BeginNav -->

<style type="text/css">

    <!--

    .nav-sprite {
      background-image: url(http://g-ecx.images-amazon.com/images/G/01/gno/beacon/BeaconSprite-US-01._V141013396_.png);
    }
    .nav_pop_h {
      background-image: url(http://g-ecx.images-amazon.com/images/G/01/gno/beacon/nav-pop-h._V155853593_.png);
    }
    .nav_pop_v {
      background-image: url(http://g-ecx.images-amazon.com/images/G/01/gno/beacon/nav-pop-v._V155853593_.png);
    }
    .nav_ie6 .nav_pop_h {
      background-image: url(http://g-ecx.images-amazon.com/images/G/01/gno/beacon/nav-pop-8bit-h._V155961234_.png);
    }
    .nav_ie6 .nav_pop_v {
      background-image: url(http://g-ecx.images-amazon.com/images/G/01/gno/beacon/nav-pop-8bit-v._V155961234_.png);
    }
    .nav-ajax-loading .nav-ajax-message {
      background: center center url(http://g-ecx.images-amazon.com/images/G/01/javascripts/lib/popover/images/snake._V192571611_.gif) no-repeat;
    }
    -->

</style>

3 个答案:

答案 0 :(得分:28)

它是由认为该网站访问者使用无法识别<style>标记的浏览器的人创建的。

(古代)浏览器,由于HTML注释,不会识别<style>标签,因此不会显示“怪异”字符(CSS规则)。

大多数浏览器都会识别<style>标记,因此开发人员似乎使用<!-- -->(不良)习惯。 应该使用。

答案 1 :(得分:0)

请记住,不仅浏览器会解释HTML 电子邮件客户端也这样做,其中一些使用旧引擎或非常奇怪的规则

通常,这是为HTML电子邮件创建模板时使用的某种技巧,因此,如果在未正确解释{的客户端上打开电子邮件, {1}}标签,那么客户端不应在邮件正文中显示CSS样式。还有更多的现代客户端应正确解释样式,因为<style>不是CSS的注释,而是CSS解析器应忽略的语法。

在这种情况下,仅当我们想在<! - ->标记中包含 Media Queries 的CSS规则时,它才能合法化。否则,在我们使用普通样式的电子邮件模板中,建议使用内联CSS 样式。

答案 2 :(得分:-3)

/*
.css {
    whatever code
}
*/

这是评论的方式。