2016-08-31 8 views
0

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

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

.parallax{ 
 
    background-image: url('http://i.stack.imgur.com/jGlzr.png'); 
 
    background-attachment: fixed; 
 
    background-position: center; 
 
    background-repeat: no-repeat; 
 
    background-size: cover; 
 
} 
 
.title{ 
 
    position: relative; 
 
    display:flex; 
 
    height: 120px; 
 
    width: 120px; 
 
    border: 3px solid white; 
 
    left: calc(50% - 60px); 
 
    align-items: center; 
 
    justify-content: center; 
 
} 
 
.content{ 
 
    background-color: red; 
 
    height:800px; 
 
}
<div class="parallax"> 
 
    <div class="title"> 
 
    <h3> 
 
     A title 
 
    </h3> 
 
    </div> 
 
    <div class="content"> 
 
    <p> 
 
     Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. 
 
    </p> 
 
    </div> 
 
</div>

+0

Вопрос слишком запутанным. Я не знаю, что вы ищете. – magreenberg

ответ

1

Это должно быть довольно просто. Все, что вам нужно сделать, это установить свой заголовок div на position: fixed и ваш контент div до position: relative и дать ему верхнее смещение высоты div div + border (126px).

Как так:

.parallax{ 
 
    background-image: url('http://i.stack.imgur.com/jGlzr.png'); 
 
    background-attachment: fixed; 
 
    background-position: center; 
 
    background-repeat: no-repeat; 
 
    background-size: cover; 
 
} 
 
.title{ 
 
    position: fixed; 
 
    display:flex; 
 
    height: 120px; 
 
    width: 120px; 
 
    border: 3px solid white; 
 
    left: calc(50% - 60px); 
 
    align-items: center; 
 
    justify-content: center; 
 
} 
 
.content{ 
 
    height:800px; 
 
    position: relative; 
 
    top: 126px; 
 
    background-color: red; 
 
}
<div class="parallax"> 
 
    <div class="title"> 
 
    <h3> 
 
     A title 
 
    </h3> 
 
    </div> 
 
    <div class="content"> 
 
    <p> 
 
     Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. 
 
    </p> 
 
    </div> 
 
</div>

+0

Awesome большое спасибо! вот что мне нужно. –

+0

Действительно, это обычно касается параллакса, но для достижения этого вам нужен какой-то javascript, и фиксированная фоновая поездка достаточно хороша для моего использования. –