2016-03-12 2 views
0

Я работаю над страницей параллакса и очень расстроен, когда дело доходит до того, что элементы будут расположены точно так, как я хочу, когда размер окна изменяется (реагирует). Все мои элементы - это текст и поэтому немного сложнее, поэтому размер шрифта должен длиться долго с позиционированием. Я не знаю, с чего начать с этой задачи, поскольку я экспериментировал с единицами просмотра, такими как vw и vh без всякой удачи.Как управлять положением элемента при изменении размера окна для цели параллакса

Я приложил три изображения, которые иллюстрируют позиционирование элемента, которого я хочу достичь. Я добавил цвет фона элементам, чтобы проиллюстрировать позиции. Как я могу достичь этой реакции на свои элементы?

Абсолютное положение является обязательным, поэтому я должен параллаксировать элементы вверх и вниз, не будучи независимыми от каких-либо заказов.

Fiddle: https://jsfiddle.net/440k02wg/1/

HTML

<section> 
    <div class="header__1"> 
    A LOT OF TEXT 
    </div> 
    <div class="header__2"> 
    BIT MORE TEXT 
    </div> 
    <div class="header__3"> 
    SOME TEXT 
    </div> 
</section> 

CSS

body, html { 
    height: 100%; 
    background-color: black; 
} 

section { 
    height: 100%; 
    position: relative; 
} 

section > div { 
    position: absolute; 
} 

.header__1 { 
    font-size: 5vw; 
    color: red; 
    background-color: grey; 
    top: 14vh; 
} 

.header__2 { 
    top: 25vh; 
    left: 4vw; 
    font-size: 10vw; 
    color: orange; 
    background-color: white; 
} 

.header__3 { 
    top: 48vh; 
    left: 60vw; 
    font-size: 5vw; 
    color: blue; 
    background-color: green; 
} 

Normal in width Scaled in width Scaled in height

ответ

1

Действительно ли position: absolute; подходит вам? Удаление, что делает проблему намного проще, поскольку элементы блока, расположенные относительно или статически, всегда придерживаются своих братьев и сестер. Я обновил ваш предоставленный пример моим предложением (и некоторые настройки, чтобы элементы соответствовали соответствующим образом).

Fiddle

Надеется, что это какая-то помощь :)

+0

Я строй параллакса страницы, где каждая секция высота 100%, и мне нужно перемещать элементы на верхних и через друг друг. Без абсолютного положения я действительно не в состоянии это сделать. – JavaCake

+0

Почему бы не просто 'z-index' работать? Можете ли вы дать мне скрипку с несколькими разделами и сценарий параллакса в своих работах, чтобы я мог помочь вам немного больше, чем бросить предложения? – Kano

+0

Допустим, я хочу прокрутить страницу вниз и переместить верхний элемент вверх и вниз по нижнему элементу вниз. Это невозможно сделать с z-индексом. Элементы, летающие в разных направлениях, нужно анимировать отдельно. Может быть, я немного неясен, но я оживляю элементы при параллаксинге. – JavaCake