CSS и вёрстка

Как сделать скругленные углы в css

📅 ⏱ 06:00 ⏳ 1 мин 💬 0

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

Коротко: скруглённые углы делают свойством border-radius. Можно задать один радиус на все углы, разные радиусы для каждого, круг (50%), «пилюлю» (999px) и овальные углы через слэш. Чтобы скруглить картинку внутри блока — нужен overflow: hidden.

Кому и зачемРадиусы — основа аккуратного интерфейса. Дизайн-система задаёт набор радиусов (например, 4/8/16px), и все компоненты используют именно их — так сайт выглядит цельным.

Базовые варианты

Код Результат
border-radius: 8px; все углы
border-radius: 16px 0; по диагонали
border-radius: 8px 4px 12px 2px; 4 разных угла
border-radius: 50%; круг из квадрата
border-radius: 999px; «пилюля»

Вкладки: примеры




CSS
.card {
  border-radius: 12px;
  overflow: hidden;   /* чтобы содержимое не выходило за углы */
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}

Для карточки с картинкой сверху обязательно overflow: hidden — иначе изображение останется с прямыми углами.

CSS
.btn-round {
  border-radius: 999px;
  padding: 12px 24px;
}

Большое значение «зажимается» до половины высоты — торцы становятся полукруглыми. Удобно: не нужно знать точную высоту.

CSS
.avatar {
  width: 56px; height: 56px;
  border-radius: 50%;
  object-fit: cover;   /* фото не искажается */
}

Круглый аватар: равные ширина и высота плюс object-fit: cover. Без него фото сожмётся или растянется.

JAVASCRIPT
:root {
  --radius-1: 4px;
  --radius-2: 8px;
  --radius-3: 16px;
}
.card { border-radius: var(--radius-3); }
.btn { border-radius: var(--radius-2); }

Радиусы из переменных — как в дизайн-системе. Меняете набор — меняется весь сайт согласованно.

Вложенные радиусыЕсли внутри скруглённого блока есть другой блок, его радиус делают меньше: «внешний минус внутренний отступ». Иначе углы «конфликтуют» и выглядят неаккуратно.

Практика: сделать сайт «мягким»

  1. Определите шкалу радиусов: 4, 8, 16px.
  2. Вынесите её в CSS-переменные.
  3. Примените к карточкам, кнопкам, полям ввода.
  4. Большие радиусы не делайте у мелких элементов.
  5. Проверьте тени: они должны повторять скругление.
  6. Проверьте картинки внутри — нужен overflow: hidden.

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

Симптом Причина Решение
Картинка с прямыми углами нет overflow: hidden добавить обрезку
Аватар овальный ширина ≠ высоте выровнять размеры
Тень «грязная» резкая тень при большом радиусе увеличить blur
Углы «торчат» внутренний радиус больше внешнего пересчитать

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

Чек-лист




Как сделать круг из квадрата?




Зачем карточке с картинкой overflow: hidden?




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

По часовой стрелке: верх-лево, верх-право, низ-право, низ-лево.

Через слэш: border-radius: 60px / 40px; — горизонтальный и вертикальный радиусы разные.

Да: border-top-left-radius: 16px; или задайте значения для четырёх углов.

Свойством clip-path — оно умеет многоугольники, круги и эллипсы. Но поддержка сложнее, чем у border-radius.

Итоги

  • Скругления — border-radius; 4 значения идут по часовой стрелке.
  • 50% — круг, 999px — «пилюля».
  • Для обрезки картинок внутри нужен overflow: hidden.
  • Радиусы берите из шкалы дизайн-системы.
Поделиться: ВКонтакте Telegram WhatsApp Одноклассники Viber Мой Мир

Комментарии

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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