Перейти к содержанию

Энциклопедия CSS: border-radius

Материал из Викижурнал
CSS: border-radius
Тематические порталы

border-radius — CSS-свойство, которое задаёт скругление углов элемента.

Свойство используют для оформления кнопок, карточек, изображений, полей формы, аватаров и других элементов интерфейса.

Синтаксис

selector {
  border-radius: значение;
}

Пример:

.box {
  border-radius: 8px;
}

В этом случае все четыре угла элемента будут скруглены на 8 пикселей.

Варианты записи

Свойство border-radius можно записывать с одним, двумя, тремя или четырьмя значениями:

.box-1 {
  border-radius: 10px;             /* все углы */
}

.box-2 {
  border-radius: 10px 20px;        /* верхний левый/нижний правый, верхний правый/нижний левый */
}

.box-3 {
  border-radius: 10px 20px 30px;   /* верхний левый, верхний правый/нижний левый, нижний правый */
}

.box-4 {
  border-radius: 10px 20px 30px 40px; /* верхний левый, верхний правый, нижний правый, нижний левый */
}

При записи с четырьмя значениями порядок идёт по часовой стрелке, начиная с верхнего левого угла.

Скругление отдельных углов

Для каждого угла есть отдельное свойство:

  • border-top-left-radius — верхний левый угол;
  • border-top-right-radius — верхний правый угол;
  • border-bottom-right-radius — нижний правый угол;
  • border-bottom-left-radius — нижний левый угол.

Пример:

.box {
  border-top-left-radius: 20px;
  border-bottom-right-radius: 20px;
}

Круг и овал

Если у квадратного элемента указать border-radius: 50%;, получится круг:

.avatar {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

Если ширина и высота отличаются, элемент станет овальным.

Живой пример

CSS: свойство border-radius
HTML
CSS
Результат

Связь с border

Свойство border-radius не создаёт границу само по себе. Оно только скругляет углы элемента. Чтобы линия была видна, обычно дополнительно задают border:

.button {
  border: 1px solid #3b82f6;
  border-radius: 6px;
}

Скругление также заметно на фоне элемента, даже если граница не задана:

.card {
  background-color: #f3f4f6;
  border-radius: 12px;
}

Статьи про другие свойства CSS

Источники