Точка в CSS, это что-нибудь делает?

#css

#css

Вопрос:

Я имею дело с чужим кодом здесь и наткнулся на что-то вроде этого:

 .selector {
 .background-position : 0px 2px;
}  

Точка в строке background-position что-нибудь делает или это был их способ закомментировать строку? Кажется, что это не имеет эффекта, о котором я знаю (используя chrome inspector и firefox inspector), но я хочу убедиться.

Спасибо за любую информацию по этому поводу.

Комментарии:

1. Это выглядит как неработающий способ закомментировать строку.

2. Странно; я никогда такого раньше не видел. Я не вижу никаких упоминаний об этом в стандартах W3C…

3. Когда единственный способ правильно закомментировать что-либо — это /* ... */ , это очень удобный способ быстро отключить что-либо, чтобы посмотреть, как это выглядит в браузере, а затем решить, сохранить это или удалить.

4. Может ли это быть взломом css, было много взломов cs, когда к атрибутам добавлялись дополнительные символы, чтобы исправить определенное поведение браузера.

5. Не похоже на взлом. Взломы обычно используют ошибки синтаксического анализа. Крайне маловероятно, что даже у худшего программиста в Microsoft будет ошибка при разборе этой строки…

Ответ №1:

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

Это «комментарий». Хотя это делает CSS недействительным и выглядит очень непрофессионально, так что неплохо бы вообще удалить ее, если она вам не нужна, или, по крайней мере, должным образом прокомментировать с помощью /* ... */ .

Комментарии:

1. Это то, что я сделал, просто хотел проверить, прежде чем перенести это в производство.

Ответ №2:

Точка там — т.Е. в .background-position — недопустима в CSS.

Точка является допустимой в селекторе, как вы это показали — ie .selector , и в этом случае он выбирает элементы с помощью class='selector' .

Но, если я правильно понял вопрос, вы спрашивали о точке в .background-position , которая, как я уже сказал, недопустима. Если вы попытаетесь добавить .background-position в качестве стиля в Firebug, он это не примет.

Ответ №3:

Это недопустимый CSS; я предполагаю, что это комментарий или ошибка.

Я видел, как люди используют символы типа _ и *, чтобы убедиться, что некоторые свойства отображаются только в определенных браузерах (например, _background-position будет применяться только в IE6), но никогда не видел, чтобы это делалось с помощью ‘.’

Ответ №4:

Префиксы точки указывают на стили, эксклюзивные для взломов браузера IE7 CSS

Комментарии:

1. Спасибо… было бы неплохо, если бы предыдущий разработчик прокомментировал это или поместил это в таблицу стилей, предназначенную для этого. Я уже удалил их в некоторых местах, и это было в мае, так что я, вероятно, уже слышал об этом к настоящему времени… но спасибо, что указали на это.

2. Я не смог найти другой источник, подтверждающий это… вы знаете о таком?

3. Недавно она была добавлена в инструмент minify, который поддерживает miscrosoft, и именно так я узнал об этом. На нее есть ссылки в примечаниях к выпуску. Помимо этого и того, что он используется в моей организации, это кажется довольно необычным. ajaxmin.codeplex.com/releases/view/76233