Вложенные комментарии CSS - PullRequest
       8

Вложенные комментарии CSS

32 голосов
/ 11 декабря 2011

Есть ли способ вложить комментарии в CSS?

Например, когда я пытаюсь закомментировать следующие два утверждения, внешний комментарий заканчивается, когда он встречает * / во вложенном комментарии, оставляяОстальная часть первого утверждения и второго утверждения без комментариев.

/*
    #container {
        width: 90%;     /* nested comment here */
        margin: 0 auto;
    }

    #container .class {
        width: 25%;
    }
*/

Я часто сталкиваюсь с этой проблемой, когда хочу опробовать другую технику стилевого оформления, которая включает несколько операторов.

Я знакомсо спецификацией CSS для комментариев и обоснованием , но также известно, что существует обходной путь для вложения комментариев HTML, и я надеюсь, что подобный хак для CSS.

Кто-нибудь нашел способ вкладывать комментарии в CSS?

Ответы [ 5 ]

43 голосов
/ 11 декабря 2011

CSS не имеет синтаксиса вложенных комментариев.

Вместо этого вы могли бы обернуть правила во что-то, что вкладывает, но не соответствует ничему, например, в несуществующий тип носителя:

@media DISABLED {
    #container {
        width: 90%;     /* nested comment here */
        margin: 0 auto;
    }

    #container .class {
        width: 25%;
    }
}

Здесь есть предостережение о том, что это не будет явно комментарий (поэтому он не будет удален инструментами, удаляющими комментарии), и заставит браузер тратить время на его разбор и обнаружение, что он не совпадает,Тем не менее, ни один из них не должен быть проблемой для временного использования при разработке, что является обычной причиной, по которой нужно просто закомментировать большой кусок.

5 голосов
/ 11 декабря 2011

Ну, да, тот же «обходной путь», который вы указали для комментариев HTML, сработал бы здесь. Измените внутренний */ на * / (с пробелом). Там действительно нет способа вложения блочных комментариев.

5 голосов
/ 11 декабря 2011

CSS не может обрабатывать вложенные комментарии.

Используя CSS-препроцессор, такой как МЕНЬШЕ или SASS , вы можете "тихо" комментировать, используя

// this syntax

Этине будет отображаться в вашем окончательном CSS.

3 голосов
/ 11 декабря 2011

Вложенные комментарии не поддерживаются CSS.Вы не можете сделать это, потому что вы не знаете, как браузеры будут читать его.

Вы можете использовать МЕНЬШЕ (расширение CSS), которое позволяет однострочный комментарий //

1 голос
/ 30 июня 2017

На пару лет опоздал на вечеринку, но я, кажется, наткнулся на способ, который, кажется, допускает своего рода вложенный комментарий ... хотя, как признал эксперт NON, могут быть проблемы.

Похоже, если вы просто поместите дополнительный, неокрашенный набор скобок вокруг некоторого CSS, CSS внутри и даже любого некомментированного текста, не распознается, по крайней мере, в Chrome 58.0.3029.110 (64-бит):

Оригинал (от несвязанный вопрос и ответ ):

html, body, .container {
    height: 100%;
}
.container {
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    justify-content: center;
}

Fiddle

со скобками:

html, body, .container {
    height: 100%;
}
{ extra braces...
.container {
    display: -webkit-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    justify-content: center;
}
/* ...act as comment? */ }

Fiddle

Вид удобен для работы разработчиков. То, как я использую это прямо сейчас:

<style>

/* Use this */
    .class1 {
        /* stuff */
    }

{ /* But not this */
    .class1 {
        /* other stuff */
    }
}

</style>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...