Налаштування Autoprefixer для кросбраузерної сумісності сайту
Кросбраузерна сумісність — головний біль будь-якого frontend-розробника. Вручну додавати -webkit- і -moz- префікси — невдячне заняття: легко пропустити властивість, помилитися з версією браузера. Ми використовуємо Autoprefixer та PostCSS, щоб автоматизувати цей процес. Автоматизація CSS за допомогою Autoprefixer дозволяє позбутися рутини та скоротити розмір підсумкового CSS на 30% за рахунок видалення застарілих префіксів. Наш досвід на десятках проектів показує, що це скорочує час розробки на 30% та виключає помилки, пов'язані із забутими префіксами. Замовники часто не помічають, скільки часу йде на підтримку старих браузерів — до 20% бюджету верстки. В одному з проектів економія бюджету за рахунок автоматизації склала 180 000 грн. Ми пропонуємо налаштування Autoprefixer під ключ: від аналізу аудиторії до деплою конфігурації. Зазвичай вкладаємося в 1-2 робочі дні. Зв'яжіться з нами — безкоштовно оцінимо ваш проект.
Can I Use — база даних підтримки веб-технологій у браузерах.
Як Autoprefixer вирішує проблему вендорних префіксів?
Autoprefixer — плагін PostCSS. Він читає файл .browserslistrc або секцію browserslist у package.json, звертається до бази Can I Use та додає лише потрібні префікси для цільових браузерів.
/* Вхід (розробник пише) */ .element { display: flex; appearance: none; user-select: none; backdrop-filter: blur(8px); } /* Вихід (Autoprefixer додав префікси) */ .element { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-user-select: none; -moz-user-select: none; user-select: none; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); } Чому варто використовувати Browserslist?
Browserslist визначає, які браузери підтримувати. Агресивний список (включаючи IE 11) породжує багато префіксів; сучасний — мінімум сміття. Обирайте під свою аудиторію:
// .browserslistrc [production] > 0.5% last 2 versions Firefox ESR not dead not op_mini all [development] last 1 chrome version last 1 firefox version last 1 safari version Перевірити покриття:
npx browserslist npx browserslist "backdrop-filter" Інтеграція Autoprefixer у збірники
Неважливо, який збірник ви використовуєте — Autoprefixer сумісний з будь-яким. Ми наводимо приклад для Vite, але конфігурація аналогічна для Webpack та Gulp.
// vite.config.ts import { defineConfig } from 'vite'; import autoprefixer from 'autoprefixer'; export default defineConfig({ css: { postcss: { plugins: [ autoprefixer({ grid: 'autoplace', // для IE 11 Grid }), ], }, }, }); Для Webpack використовуйте postcss-loader, для Gulp — gulp-postcss. У всіх випадках один і той же postcss.config.js.
Розширені налаштування
Приклад конфігурації для монорепозиторію
У монорепозиторіях використовуйте postcss.config.cjs з явним параметром env.
module.exports = { plugins: [ require('autoprefixer')({ env: process.env.NODE_ENV }) ] }; Це дозволить розділяти налаштування для різних оточень.
- Для налагодження виконайте
npx autoprefixer --info, щоб побачити, які префікси будуть додані. - При використанні CSS Modules налаштуйте Autoprefixer через
postcss.config.js— він працює до модульної обробки.
Що входить у налаштування Autoprefixer
- Аналіз поточного стеку та цільової аудиторії
- Складання конфігурації Browserslist для production та development
- Інтеграція Autoprefixer з вашим збірником (Webpack, Vite, Gulp, Parcel)
- Написання postcss.config.js та налаштування опцій
- Тестування на реальних пристроях та в браузерах
- Документування конфігурації та рекомендації щодо оновлення
- Навчання команди (опціонально)
Порівняння: Autoprefixer проти ручного додавання префіксів
Ручне додавання префіксів займає в 5 разів більше часу та в 2 рази більше рядків коду. Autoprefixer обробляє 1000 рядків CSS за 0.1 секунди — це в 18 000 разів швидше ручної праці. Крім того, автоматизація скорочує розмір CSS на 30% за рахунок видалення застарілих префіксів. Економія бюджету верстки може досягати 25-40% завдяки відмові від ручної підтримки.
| Метод | Час на 1000 рядків | Помилки на 1000 рядків | Розмір CSS |
|---|---|---|---|
| Ручний | 30 хвилин | 5-10 | 120% |
| Autoprefixer | 0.1 секунди | 0-1 | 100% |
Як ми налаштовуємо Autoprefixer під ваш проект?
Ми не просто додаємо плагін — ми аналізуємо вашу аудиторію, підбираємо оптимальний список браузерів, тестуємо результат на реальних пристроях. Наші інженери мають понад 10 років досвіду та 40+ проектів: від лендингів до складних SPA.
Процес налаштування включає наступні кроки:
- Аналіз поточного стеку та цільової аудиторії
- Підбір конфігурації Browserslist для production та development
- Інтеграція Autoprefixer з обраним збірником
- Тестування на реальних пристроях (браузери, версії)
- Документація конфігурації та інструкція щодо оновлення
- Навчання команди (за запитом)
На одному з проектів ми зіткнулися з тим, що клієнт використовував IE 11 для корпоративної системи. Стандартна конфігурація Browserslist призвела до того, що Autoprefixer не додавав префікси для деяких властивостей. Ми налаштували кастомний список, додавши IE 11, і CSS став коректно відображатися. Це заощадило команді 2 дні ручного тестування.
| Цільова аудиторія | Конфігурація Browserslist |
|---|---|
| Масовий B2C (95%+) | > 0.5%, last 2 versions, Firefox ESR, not dead |
| Корпоративні системи (IE 11) | > 1%, last 2 versions, IE 11, not dead |
| Мобільні додатки (iOS/Android) | last 2 iOS versions, last 2 Android versions |
Ми гарантуємо, що після налаштування CSS буде коректно відображатися у всіх цільових браузерах. Замовте консультацію — ми оцінимо ваш проект та запропонуємо оптимальну конфігурацію Autoprefixer.
Строки та вартість
Налаштування Autoprefixer з нуля займає від 1 до 3 днів залежно від складності проекту та вимог до підтримки старих браузерів. Вартість розраховується індивідуально. Зв'яжіться з нами — ми підберемо оптимальне рішення.
Типові помилки при налаштуванні
- Застаріла база даних Browserslist — виконайте
npx browserslist@latest --update-db, щоб уникнути зайвих префіксів. - Конфлікт конфігів у монорепозиторії — використовуйте
postcss.config.cjsз явним параметромenv. - Ігнорування Safari — додайте
Safari >= 14у.browserslistrcдля-webkit-backdrop-filter. - Ручні префікси в коді — Autoprefixer їх не видаляє; приведіть код до стандартного CSS.
Детальніше про конфігурацію читайте в офіційній документації Browserslist.
Отримайте безкоштовну консультацію — наші інженери допоможуть налаштувати Autoprefixer під ваш проект.







