Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
231 of 313 menu
◀ ▶

Свойство position

Свойство position задает способ позиционирования элементов. Данное свойство чаще всего используется совместно со свойствами top, right, bottom, left, которые устанавливают отступы сверху, справа, снизу, слева соответственно.

Синтаксис

селектор { position: absolute | relative | fixed | static | sticky; }

Значения для position

Значение Описание
absolute Абсолютное позиционирование. Элемент удаляется из нормального потока документа и позиционируется относительно ближайшего позиционированного предка (если есть) или относительно окна браузера.
relative Относительное позиционирование. Элемент смещается относительно своего нормального положения в потоке документа, но пространство, которое он занимал, остается зарезервированным.
fixed Фиксированное позиционирование. Элемент удаляется из нормального потока документа и позиционируется относительно окна браузера. Остается на месте при прокрутке страницы.
static Статичное позиционирование. Значение означает отсутствие позиционирования и элемент ведет себя как обычно.
sticky Липкое позиционирование. Элемент ведет себя как relative, пока не достигнет заданной позиции при прокрутке, после чего прилипает к указанному месту (как fixed).

Значение по умолчанию: static.

Пример . Абсолютное позиционирование

Расположим элемент в верхнем левом углу экрана с небольшими отступами:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: absolute; top: 40px; left: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

Пример . Абсолютное позиционирование

А теперь расположим элемент в верхнем правом углу экрана с небольшими отступами:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: absolute; top: 40px; right: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

Пример . Фиксированное позиционирование

При фисированном позиционировании элемент будет оставаться на месте при прокрутке:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: fixed; top: 40px; left: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

Пример . Относительное позиционирование

При относительном позиционировании элемент смещается относительно своего нормального положения, но остальные элементы ведут себя так, как если бы элемент не смещался:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { display: flex; justify-content: flex-row; } .elem { margin: 0 3px; width: 100px; height: 100px; background-color: #add8e6; } .elem2 { position: relative; top: 20px; left: 30px; background-color: #e6addf; }

:

Пример . Вложенность

Если у родителя свойство position имеет значение relative, то абсолютно спозиционированные элементы будут позиционироваться относительно родителя:

<div class="container"> <div class="elem"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 0px; right: 0px; width: 100px; height: 100px; background-color: #add8e6; }

:

Пример . Вложенность

Если у родителя свойство position имеет значение absolute, то абсолютно спозиционированные элементы будут позиционироваться относительно родителя:

<div class="container"> <div class="elem"></div> </div> .container { position: absolute; top: 30px; left: 30px; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 0px; right: 0px; width: 100px; height: 100px; background-color: #add8e6; }

:

Пример . Липкое позиционирование

Если для элемента свойство position имеет значение sticky, то элемент ведет себя как relative, пока не достигнет заданной позиции при прокрутке, после чего прилипает к месту. Давайте сделаем липкий хедер:

<h1>Main Site Header</h1> <div class="header">header header header</div> <div class="main"> some long text </div> h1 { text-align: center; } .header { position: sticky; top: 0; padding: 20px; background: #f0f0f0; text-align: center; font-weight: bold; } .main { width: 400px; margin: 20px auto; border: 1px solid #ccc; padding: 20px; text-align: justify; }

:

Пример . Без позиции

Если элементу задать абсолютное позиционирование без указания позиции, то элемент останется стоять в том месте, где он стоял без позиционирования, но остальные элементы перестанут его замечать:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { display: inline-block; } .elem2 { position: absolute; width: 50px; height: 50px; background-color: #e6addf; } .elem1, .elem3 { width: 100px; height: 100px; background-color: #add8e6; }

:

Пример . Одна ось

При абсолютном позиционировании можно задать позицию только по одной оси. К примеру, если мы зададим свойство top, то по вертикали элемент станет в нужную позицию, а по горизонтали останется стоять, там, где и стоял:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { display: inline-block; } .elem2 { position: absolute; top: 20px; width: 50px; height: 50px; background-color: #e6addf; } .elem1, .elem3 { width: 100px; height: 100px; background-color: #add8e6; }

:

Пример . Все позиции

При абсолютном позиционировании можно задать позиции со всех сторон, не задавая ширину и высоту. В этом случае элемент станет по центру родительского блока:

<div class="container"> <div class="elem"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 20px; bottom: 20px; left: 20px; right: 20px; background-color: #add8e6; }

:

Смотрите также

  • свойство z-index,
    которое задает наложение элементов
← →
↑
Русский▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить