CSS repeating-radial-gradient() — кільця градієнта


Опис

автор: Bond

Загальний опис

автор: NagarD

Порада

Використовуйте функцію repeating-radial-gradient() для створення повторюваних радіальних градієнтів на фоні елементів.

автор: Bond
Порада

Експериментуйте з різними комбінаціями форми, позиції та кольорових зупинок, щоб отримати бажаний вигляд градієнта.

автор: Bond
Порада

Використовуйте ключові слова circle або ellipse для визначення форми градієнта.

автор: Bond
Порада

Використовуйте ключове слово at разом із <position>, щоб вказати позицію градієнта на елементі.

автор: Bond

Синтаксис

repeating-radial-gradient([ circle | ellipse ] [ at <position> ]?, <color-stop-list>);

Функція repeating-radial-gradient може отримувати 3 значень:

<circle>

Вказує, що форма градієнта є колом.

автор: Bond

<ellipse>

Вказує, що форма градієнта є еліпсом.

автор: Bond

<position>

Вказує позицію градієнта на елементі. <position> може бути відсотком, ключовим словом або комбінацією відсотків і ключових слів. Наприклад, at 50% 50%, at top left, at 25% 75%, тощо.

автор: Bond

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
26 16 7 12.1 12 10
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 26 16 7

Приклади

+ запропонувати свій приклад у пісочниці

Цей приклад демонструє два однакових елементи з різними градієнтами.

HTML

<div id="description">
  <h2>Приклад 2</h2>
  <p>Цей приклад демонструє два однакових елементи з різними градієнтами.</p>
</div>

<div id="result">
  <div class="container">
    <div class="element example"></div>
    <div class="element changed"></div>
  </div>
</div>

CSS

#description {
  font-style: italic;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 50px;
  padding: 12px 16px;
  background-color: #f7f7f7;
  border: 1px solid #ccc;
}

.container {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.element {
  width: 150px;
  height: 150px;
  border-radius: 50%;
}

.example {
  background: repeating-radial-gradient(circle at center, red 0, blue, green 30px);
}

.changed {
  background: repeating-radial-gradient(farthest-corner at 20% 20%, red 0, green, red 20%);
}
автор: Bond

Цей приклад ілюструє зміну градієнта при взаємодії з елементом.

HTML

<div id="description">
  <h2>Приклад 1</h2>
  <p>Цей приклад ілюструє зміну градієнта при взаємодії з елементом.</p>
</div>

<div id="result">
  <div class="container">
    <div class="element"></div>
  </div>
</div>

CSS

#description {
  font-style: italic;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 50px;
  padding: 12px 16px;
  background-color: #f7f7f7;
  border: 1px solid #ccc;
}

.container {
  display: flex;
  justify-content: center;
  align-items: center;
}

.element {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: repeating-radial-gradient(circle at 70%, #333, #333 10px, #eee 10px, #eee 20px);
  transition: background 0.3s ease;
}

.element:hover {
  background: repeating-radial-gradient(circle at 60%, #000, #666 10px, #888 15px, #aaa 25px);
}
автор: Bond

Перша пара квадратів — доказ: repeating-radial-gradient(circle, red, blue) і звичайний radial-gradient(circle, red, blue) виглядають однаково, повтору немає. Далі — той самий градієнт із явними зупинками, зі зсунутим центром і без шва.

HTML

<div class="row">
    <figure>
        <div class="box no-stops"></div>
        <figcaption>repeating-radial-gradient(circle, red, blue)</figcaption>
    </figure>
    <figure>
        <div class="box plain"></div>
        <figcaption>radial-gradient(circle, red, blue) — те саме</figcaption>
    </figure>
</div>

<div class="row">
    <figure>
        <div class="box rings"></div>
        <figcaption>… red 0 10px, blue 10px 20px — кільця</figcaption>
    </figure>
    <figure>
        <div class="box off"></div>
        <figcaption>circle at 25% 30% — центр зсунуто</figcaption>
    </figure>
    <figure>
        <div class="box seam"></div>
        <figcaption>шов: крайні кольори різні</figcaption>
    </figure>
    <figure>
        <div class="box smooth"></div>
        <figcaption>шва немає: перший колір повторено в кінці</figcaption>
    </figure>
</div>

CSS

.row {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 18px;
}

figure {
    margin: 0;
    width: 150px;
}

figcaption {
    margin-top: 6px;
    color: #5a6472;
    font: 12px/1.35 ui-monospace, monospace;
}

.box {
    width: 150px;
    height: 150px;
    border: 1px solid #b9c6d8;
}

.no-stops {
    background: repeating-radial-gradient(circle, red, blue);
}

.plain {
    background: radial-gradient(circle, red, blue);
}

.rings {
    background: repeating-radial-gradient(circle, red 0 10px, blue 10px 20px);
}

.off {
    background: repeating-radial-gradient(circle at 25% 30%, #f2b134 0 8px, #2f6fd0 8px 16px);
}

.seam {
    background: repeating-radial-gradient(circle, #2f6fd0 0, #f2b134 24px);
}

.smooth {
    background: repeating-radial-gradient(circle, #2f6fd0 0, #f2b134 24px, #2f6fd0 48px);
}
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле веде сходинками (розділ → тип → сторінка), а хибний ключ підкреслить хвилею.
[[!sandbox/S0oh1hBm]] Живий приклад окремим рядком — саме вікно результату. Той самий ключ зі знаком !: наберіть [[! і дійдіть сходинками до потрібної сторінки, список покаже її приклади.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Правка
Зворотний зв'язок
Вхід