WebKit отказывается от префикса "-webkit-" для экспериментальных возможностей
Разработчики браузерного движка WebKit объявили об изменении правил интеграции поддержки экспериментальных web-технологий. Отныне все новые экспериментальные возможности будут добавляться без префикса "-webkit-", но будут активироваться только при включении специальных runtime-флагов.
Что касается ранее добавленных элементов с префиксом "-webkit-", то решения по их удалению будет приниматься в индивидуальном порядке. Разработчики намерены существенно сократить число элементов с префиксом, но для обеспечения совместимости на некоторое время сохранят ряд элементов, находящихcя в обиходе.
Отказ от практики снабжения экспериментальных возможностей специальным префиксом обусловлен плачевной ситуацией с применением на практике элементов CSS, снабженных префиксом. С учетом доминирования движка webkit на мобильных устройствах подобные элементы досрочно начинают применяться в реальных приложениях. Более того, они продолжают использоваться даже после появления стандартизированного варианта элемента без префикса так как подавляющее большинство мобильных браузеров сохраняют поддержку свойств "-webkit-". Например, в приложениях широко используются свойства "-webkit-flexbox", "-webkit-transforms", "-webkit-transform-3d", "-webkit-filter" и "-webkit-animation".
Применение подобных нестандартных свойств, специфичных для одного самого популярного браузерного движка, создает проблемы с совместимостью и вынуждает разработчиков альтернативных браузеров реализовывать в своих продуктах элементы с префиксом "-webkit-", вопреки их изначальному предназначению для индикации неготовых для внедрения экспериментальных функций. Например, серия подобных элементов добавлена в свежем выпуске Firefox. Кроме того, перестает работать стратегия удаления снабженных префиксом элементов после появления их стандартизированных вариантов, так как разработчики браузеров не готовы пойти на нарушение совместимости с большим числом приложений, даже если они используют нестандартные элементы, предназначенные только для тестирования.