JS властивість CSSStyleDeclaration.backgroundPosition


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

backgroundPosition — це властивість, яка дозволяє встановлювати або повертати позицію фону елемента. Вона є важливою для налаштування візуального вигляду вебсторінок, зокрема для точного розташування фонових зображень у межах елемента. Використовується в CSS для контролю над тим, як фонове зображення буде відображатись відносно меж елемента. Ця властивість є корисною в ситуаціях, коли потрібно створити складні фонові ефекти або налаштувати фон відповідно до дизайну вебсторінки.

Використання властивості backgroundPosition

Встановлення позиції фону

Для найпростішого випадку, ви можете встановити позицію фону за допомогою двох значень, які визначають горизонтальну і вертикальну позиції. Ці значення можуть бути визначені у відсотках, пікселях, або за допомогою ключових слів (left, right, top, bottom, center).

let element = document.getElementById('myElement');
element.style.backgroundPosition = '50% 50%'; // Центрує фон у межах елемента

У цьому прикладі фонове зображення буде розташоване по центру елемента як по горизонталі, так і по вертикалі.

Використання ключових слів

Ключові слова дозволяють швидко і легко встановити позицію фону без необхідності вказувати точні координати.

element.style.backgroundPosition = 'right bottom'; // Розташовує фон у правому нижньому куті елемента

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

Комбінування відсотків і ключових слів

Ви також можете комбінувати відсоткові значення з ключовими словами для більшої гнучкості.

element.style.backgroundPosition = 'left 25%'; // Розташовує фон по лівому краю, але на 25% вниз від верхнього краю

Цей підхід дозволяє точно налаштувати позицію фону залежно від дизайну вашої сторінки.

Використання пікселів для точного розташування

Якщо вам потрібна абсолютна точність, ви можете використовувати пікселі для встановлення позиції фону.

element.style.backgroundPosition = '10px 20px'; // Розташовує фон на 10 пікселів від лівого краю та на 20 пікселів від верхнього краю

Цей метод є корисним, коли потрібно точно розташувати фонове зображення відносно меж елемента.

Використання з іншими CSS-властивостями

Властивість backgroundPosition часто використовується разом з іншими CSS-властивостями, такими як backgroundSize, backgroundRepeat та backgroundImage, для створення комплексних фонових ефектів.

element.style.backgroundImage = 'url("background.jpg")';
element.style.backgroundSize = 'cover';
element.style.backgroundRepeat = 'no-repeat';
element.style.backgroundPosition = 'center center';

Цей код встановлює фонове зображення, яке покриває весь елемент, не повторюється і розташоване по центру.

Висновок

Властивість backgroundPosition є потужним інструментом для керування розташуванням фонових зображень у межах елемента. Вона надає велику гнучкість у налаштуванні візуальних ефектів на вебсторінках, дозволяючи використовувати різні одиниці вимірювання та ключові слова для точного позиціонування. Використовуючи цю властивість разом з іншими CSS-властивостями, можна створювати складні та привабливі дизайни.

автор: Bond

Порада

Використовуйте backgroundPosition для створення адаптивних дизайнів. Встановлюючи позицію фону у відсотках, ви можете забезпечити, щоб фонове зображення залишалося пропорційно розташованим незалежно від розміру вікна браузера. Наприклад, element.style.backgroundPosition = '50% 50%' гарантує, що фон завжди буде центрованим.

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

Комбінуйте ключові слова та одиниці вимірювання для точного налаштування позиції фону. Ви можете використовувати ключові слова, такі як left, right, top, bottom, разом із відсотками або пікселями для більшої гнучкості. Наприклад, element.style.backgroundPosition = 'left 10%' розташовує фон по лівому краю, але на 10% вниз від верхнього краю.

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

Використовуйте backgroundPosition разом із іншими властивостями фону для створення складних візуальних ефектів. Наприклад, поєднання з backgroundSize та backgroundRepeat дозволяє налаштувати розмір і повторення фону. Код element.style.backgroundSize = 'cover'; element.style.backgroundRepeat = 'no-repeat'; element.style.backgroundPosition = 'center center'; забезпечує, що фон покриває весь елемент, не повторюється і центрований.

автор: Bond

Синтаксис

element.style.backgroundPosition

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE
1 1 3 8 12
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 1
Підтримка: серверні переглядачі
Переглядач Node.js Deno
- -

Приклади

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

У цьому прикладі фонове зображення буде центроване всередині елемента. Встановлення значень 50% 50% для backgroundPosition гарантує, що зображення буде розташоване по центру як по горизонталі, так і по вертикалі.

HTML

<div id="myElement">Демонстраційний елемент</div>

JS

// Отримуємо елемент за його ID
let element = document.getElementById('myElement');

// Встановлюємо фонове зображення
element.style.backgroundImage = 'url("background.jpg")';

// Центруємо фонове зображення горизонтально і вертикально
element.style.backgroundPosition = '50% 50%';
автор: Bond

У цьому прикладі фонове зображення плавно переміщується від початкової позиції (0, 0) до позиції (100px, 100px) протягом 5 секунд, а потім повертається назад. Використання CSS-анімацій дозволяє створювати складні динамічні ефекти, які можуть значно покращити візуальну привабливість вебсторінки.

HTML

<div id="myElement">Демонстраційний елемент</div>

JS

// Отримуємо елемент за його ID
let element = document.getElementById('myElement');

// Встановлюємо фонове зображення
element.style.backgroundImage = 'url("background.jpg")';

// Встановлюємо початкову позицію фону
element.style.backgroundPosition = '0 0';

// Використовуємо CSS для створення анімації переміщення фону
const style = document.createElement('style');
style.innerHTML = `
  @keyframes moveBackground {
    from {
      background-position: 0 0;
    }
    to {
      background-position: 100px 100px;
    }
  }

  #myElement {
    animation: moveBackground 5s infinite alternate;
  }
`;
document.head.appendChild(style);
автор: Bond

У цьому прикладі ми створюємо просту веб-сторінку, де користувач може змінювати позицію фонової картинки всередині елемента за допомогою трьох кнопок. Кожна кнопка встановлює різну позицію фону: left top, center center, або right bottom. Це дозволяє користувачеві взаємодіяти зі сторінкою та бачити, як змінюється позиція фону в реальному часі.

CSS стилізує заголовок, опис, блок результату та кнопки управління. JavaScript функція changePosition змінює значення властивості backgroundPosition елемента з ID demoBox відповідно до натиснутої кнопки.

автор: Bond

Коментарі

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

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

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

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

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