CSS и вёрстка

Как убрать рамку у кнопки CSS

Как убрать рамку у кнопки CSS 📅 ⏱ 20:37 ⏳ 1 мин 💬 0

Как убрать рамку у кнопки css: простыми словами, по шагам и с примерами. Разбираем, как это работает на практике, типичные ошибки и лучшие решения. Раскрываем т

Как убрать рамку у кнопки CSS

Коротко: убрать рамку у кнопки можно через border: none (или border: 0), а если это обводка фокуса — через свои стили :focus-visible. У кнопок бывает три «рамки»: border, outline и вдавленность от системного оформления — их убирают по-разному.

Кому и зачемВ разных браузерах кнопки выглядят по-разному: где-то серая рамка, где-то синяя обводка при клике. Чтобы кнопка выглядела одинаково и «чисто», нужно разом убрать все три источника.

Три источника «рамки»

Источник Как убрать
border border: 0
outline (фокус) заменить своим индикатором
Системное оформление appearance: none

Вкладки: варианты кода




CSS
.btn { border: 0; }
.btn { border: none; }   /* то же самое */

border: 0 и border: none равнозначны. Если рамка была «сверху-снизу» — задайте border: 0 целиком, чтобы сбросить все стороны.

CSS
.btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,63,143,.35);
}

Это правильный способ: визуально рамки нет, но фокус виден. Если написать outline: none без замены — сайт станет неудобным для клавиатуры.

CSS
input[type="submit"],
button {
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  background: #003F8F;
  color: #fff;
  border-radius: 8px;
  padding: 12px 20px;
  font: inherit;
  cursor: pointer;
}

Для кнопок-инпутов и нативных button важно снять системное оформление и наследовать шрифт — иначе вид и размеры «поедут».

CSS
.btn--ghost {
  background: transparent;
  border: 1px solid #003F8F;
  color: #003F8F;
}
.btn--ghost:hover { background: #003F8F; color: #fff; }

Иногда «рамка» — элемент дизайна. Тогда её не убирают, а задают аккуратно: толщину, цвет и изменение при наведении.

Фокус — это не «рамка», а доступностьСиняя обводка при клике — не баг, а помощь людям, которые управляют сайтом с клавиатуры. Убирайте её, только заменив своим, видимым индикатором.

Практика: привести все кнопки к одному виду

  1. Сбросьте системный вид: appearance: none, border: 0, background.
  2. Задайте размеры, радиус, шрифт наследуемый.
  3. Добавьте cursor: pointer.
  4. Опишите состояния :hover, :active, :disabled.
  5. Замените outline своим индикатором фокуса.
  6. Проверьте в Safari, Chrome и на мобильном.

Частые ошибки: причина → решение

Симптом Причина Решение
Рамка «осталась» это outline при клике заменить своим индикатором
Кнопка «вдавленная» системное оформление appearance: none
В Safari выглядит иначе свои стили webkit добавить -webkit-appearance: none
Шрифт отличается от сайта не наследуется font: inherit

Проверьте себя

Чек-лист




Что чаще всего «остаётся» как рамка после border: 0?




Почему нельзя просто убрать outline без замены?




Вопросы и ответы

Через «Дополнительные стили» задайте правило для класса кнопки: .wp-block-button__link { border: 0; } или класс вашей темы.

border занимает место в раскладке и часть дизайна. outline рисуется снаружи, места не занимает и обычно показывает фокус.

Правки были в родительской теме или в файлах. Перенесите стили в дочернюю тему или в «Дополнительные стили».

Базовую рамку уберите, а в :hover добавьте border или box-shadow. Учтите, что border может «сдвинуть» текст — компенсируйте прозрачной рамкой той же толщины.

Итоги

  • Рамка — это border, обводка — outline, «вдавленность» — системный стиль.
  • Убирайте outline только с собственной заменой для фокуса.
  • Для нативных кнопок — appearance: none и font: inherit.
  • Описывайте кнопку единым компонентом с состояниями.
Поделиться: ВКонтакте Telegram WhatsApp Одноклассники Viber Мой Мир

Комментарии

Пока комментариев нет — будьте первым, кто поделится мнением.

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Получите консультацию нашего маркетолога

Изучит ваш проект, подберет подходящие услуги и тарифы

Получите бесплатный аудит

Наш специалист сделает базовый аудит вашего проекта и предложит персональные предложения.

Закажите услугу Каталог морепродуктов

Наш специалист свяжется с вами в ближайшее время и уточнит детали

Закажите адаптивный сайт

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите сайт

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите сайт лендинг

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите сайт каталог

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите интернет-магазин

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите веб-приложение

Наш специалист поможет составить Вам техническое задание на разработку сайта

Закажите тариф Аутсорс

Стоимость от 150 000 ₽

Закажите тариф Магазин

Стоимость 90 000 ₽

Закажите тариф Классический

Стоимость 60 000 ₽

Закажите тариф Эконом

Стоимость 40 000 ₽

Закажите SEO продвижение

Наш специалист свяжется с вами, проведет анализ, предложит стоимость