Можно ли кастомизировать браузерные стили

«Можно ли кастомизировать браузерные стили» — вопрос из категории CSS, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, можно кастомизировать браузерные стили, но есть нюансы.

  1. Reset или Normalize CSS – сбрасывают стандартные стили браузеров.
  2. Свойство appearance – позволяет убрать нативные стили элементов (например, input[type="search"]).
  3. Псевдоэлементы (::-webkit-scrollbar) – стилизуют скроллбары.
  4. all: unset – сбрасывает все стили элемента.

Пример:

/* Убирает стрелки у input[type="number"] */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Кастомизация скроллбара */
::-webkit-scrollbar {
  width: 8px;
  background: #f1f1f1;
}

⚠️ Не все стили можно изменить кроссбраузерно (например, select в Firefox).