Вендорные префиксы на CSS

В прошлом среди браузеров сложилась следующая ситуация: до того, как свойство CSS появится в спецификации, браузеры реализовывали пробную версию этого свойства со специальной приставкой, которая называется вендорным префиксом (от слова vendors – разработчики, префикс разработчиков).

Как это выглядит, давайте посмотрим на примере свойства box-sizing:

p { box-sizing: border-box; }

Это свойство начало поддерживаться только с Firefox29, однако уже с версии Firefox2 оно было доступно с префиксом -moz:

p { -moz-box-sizing: border-box; }

Остальные браузеры имели аналогичные приставки: -moz - Mozilla Firefox, -webkit - браузеры на движке Webkit и Blink, -o - Opera на движке Presto, -ms - IE.

Таким образом, наиболее кроссбраузерный вариант свойства box-sizing, с использованием вендорных префиксов имел примерно следующий вид:

p { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; -o-box-sizing: border-box; box-sizing: border-box; }

В настоящее время браузеры решили отказаться от префиксов в связи с их неудобностью. И сейчас вместо них используют так называемые флаги. Свойства теперь внедряются в браузер, но по умолчанию отключены, однако их можно включить в настройках браузера, поставив соответствующий флажок в настройках. Это сделано для того, чтобы разработчики имели возможность поиграться с новым свойством до его официального появления.