Выпадает ли position absolute из DOM?
Я смотрел ролик про позицинирование в css. Автором была сказана такая мысль, что когда элементу применяется абсолютное позиционирование, то он как бы выпадает из DOM дерева, аналогично как это происходит с display none. Т.е другие элементы его не видят и не реагируют. Так ли это, или это в корне неправильное объяснение? У меня тогда встречный вопрос, почему тогда появляется горизонтальная прокрутка если отодвинуть элемент далеко вправо за границы вьюпорта, он же как сказал автор "выпадает" на странице и должно быть все равно?
И еще небольшой вопросик, почему если отодвинуть элемент вправо за границы, то горизональная прокрутка появляется, а если в лево то нет, насколько далеко не двигали бы? Мне кажется это довольном странно. С right работает таким образом, left совсем наоборот
Ответы (1 шт):
Думаю всё дело в направлении "direction: ltr или rtl". Оно задаёт начало слева или справа. Думаю даже у арабов или Евреев например скролл появляется не справа, а слева.
.okno-brauzera {
width: 500px;
height: 250px;
display: block;
background: yellow;
overflow-x: auto;
position: relative;
}
.okno-brauzera.rtl {
direction: rtl;
}
.element-left {
display: block;
width: 100px;
height: 100px;
background: green;
position: absolute;
left: -50px;
}
.element-right {
display: block;
width: 100px;
height: 100px;
background: green;
position: absolute;
right: -50px;
}
<div class="okno-brauzera">
<div class="element-left"></div>
<div class="element-right"></div>
</div>
<div class="okno-brauzera rtl">
<div class="element-left"></div>
<div class="element-right"></div>
</div>