Зарегистрируйтесь, чтобы продолжить обучение

Фиксированное позиционирование CSS: Позиционирование элементов

Тема позиционирования не заканчивается только на относительном и абсолютном. Их вполне достаточно для большинства возникающих ситуаций — это очень мощные и гибкие инструменты.

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

Для решения такой проблемы существует фиксированное позиционирование. Оно очень похоже на абсолютное:

  • элемент также выдергивается из нормального потока документа, а его место занимают другие элементы;
  • мы можем управлять расположением с помощью правил top, right, bottom, left.

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

<style>
  .fixed {
    position: fixed;
    top: 0;
    left: 0;
  }
</style>

<div class="fixed">Блок с фиксированным расположением. Его координаты относительно видимой области браузера всегда будут одни и те же.</div>

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


Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff
Рекомендуемые программы
профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 26 декабря
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 26 декабря

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»