Использование расположений CSS: значение «фиксированное»
17 сентября 2017 | Опубликовано в css | 1 Комментарий »
Таким же образом, как свойство background-attachment: fixed (фиксированное расположение фона) действует на фоновые изображения, position: fixed (фиксированное расположение) действует на элементы: оно позволяет элементу закрепиться на своем положении относительно веб-страницы, в то время как остальное содержимое будет проматываться мимо него. Обычно это свойство применяется к содержащим элементам, наиболее часто к шапкам и подвалам. Как и в случае с элементами с абсолютным расположением, обычное содержимое со статическим расположением будет проматываться под содержимым с фиксированным расположением. Один из примеров — выезжающая вкладка сбоку страницы, которая скрывает содержимое, пока оно не нужно.
Рассмотрим подробнее расположение этой вкладки, оно очень простое.
Используется следующая разметка:
<div id="fixed-pull-tab"> <img src="http://thenewcode.com/assets/images/levis-red-tab.png" style="float: right" alt="LEVI’S"> <p>Это пример элемента со свойством <code>position: fixed;</code> примененным к нему, чтобы показать, как действует фиксированное расположение.</div>
Вот связанный с разметкой код CSS: использовано свойство тени блока, чтобы подчеркнуть то, что слой блока с фиксированным расположением находится выше:
div#fixed-pull-tab { width: 300px; border: 1px solid #000; padding-left: 1em; background-color: rgba(255, 255, 37, 0.7); position: fixed; left: -265px; top: 200px; } div#fixed-pull-tab p { margin-right: 70px; } div#fixed-pull-tab img { box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.33); } div#fixed-pull-tab:hover { left: 0; }
Как и в случае со свойством абсолютного расположения, свойство фиксированного расположения нужно использовать осторожно: с его помощью очень легко создать функции веб-страницы, которые перекрывают и загораживают содержимое.
Особенности фиксированного элемента или элементов, расположенных внутри блока
При нормальных условиях элемент с фиксированным расположением изымается из содержимого, и все данные о его расположении позиционируют его относительно тега, не зависимо ни от чего.
Хотя можно поместить элемент с фиксированным расположением внутрь и относительно другого элемента, если этот родительский элемент использует трансформации. Так что при использовании следующей разметки:
<div id="container"> <div id="fixed"></div> </div>
Внутренний элемент может быть зафиксирован в родительском элементе с помощью кода CSS ниже, который для наглядности приведен без приставок производителей:
#container { transform: translateZ(0); } #fixed { position: fixed; }
Эта особенность является частью спецификации CSS и поддерживается большинством современных версий браузеров, кроме Internet Explorer версии 11. Eric Meyer обнаружил ее одним из первых. Вероятно, она так и будет очень редко использоваться, так как большинство веб-разработчиков предпочитает намного более распространенный и широко известный способ, использующий абсолютное расположение в блоке с относительным расположением, но об этом все равно стоит знать.
Автор урока Dudley Storey
Перевод — Дежурка
Смотрите также:
Комментарии
Похожие статьи
- Использование множественных фоновых изображений CSS: основы
- Создание элементов, расположенных ровно по центру, с высотой и шириной, заданными в процентах
- Использование плавной прокрутки и ее недостатки
- Использование тега span для разделения слов в ссылках в CSS
- Использование порядка расположения множественных фоновых изображений