Исправлен фон и div, начинающийся под страницей - PullRequest
0 голосов
/ 13 июня 2018

Я хочу создать простой стиль CSS, но кажется, что реализовать его так сложно

, чего я хочу добиться, так это иметь фоновое изображение, фиксированное для всей страницы, и я хочу, чтобы содержимоевеб-сайт должен быть «под» изображением, что означает, что когда пользователь посещает страницу, он будет видеть только фон, после прокрутки вниз содержимое будет отображаться снизу

я пробовал это

.content {
  background-image: url('../img/header-bg.jpg');
  background-position: center;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.content-title {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fed136;
}

.page-body::before {
  position: relative;
}

.page-body {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.view-more {
  width: 100%;
  height: 125px;
  border: none;
  background: rgba(0, 0, 0, .3);
}
<div class="content">
  <div class="content-title">
    <h1>Hello World</h1>
  </div>
</div>

<div class="page-body">
  <button class="view-more">View More</button>
  <div class="page-holder">
    <button>Click Me</button>
  </div>
</div>

проблема здесь в том, что HTML-теги, которые я добавляю под кнопкой «view-more», толкают кнопку «view-more» вверх вместо того, чтобы оставаться под ней

как мне достичь такого результата?

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

Я немного изменил ваш CSS, потому что мне нужно было начинать с нуля, но я думаю, что это то, чего вы хотели достичь.Я использовал z-index, чтобы указать, какие элементы идут сверху.Я также добавил .page-body {top: 100%;} как упомянутое @nikhil.

<div class="content">
  <div class="content-title">
    <h1>Hello World</h1>
  </div>
</div>

<div class="page-body">
  <button class="view-more">View More</button>
  <div class="page-holder">
    <button>Click Me</button>
  </div>
</div>

CSS

.content {
  background: rgba(0,0,0,0.4);
  background-position: center;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
}

.content-title {
  display: table;
  z-index: 1000;
  width: 100%;
  height: 100%;
  color: yellow;
}

h1 {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

.page-body {
  display: block;
  position: absolute;
  text-align: center;
  top: 100%;
}
0 голосов
/ 13 июня 2018

Для page-body используйте top: 100% & position:absolute.Кроме того, удалите перед css

.content {
  background-image: url('../img/header-bg.jpg');
  background-position: center;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.content-title {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fed136;
}

.page-body {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 100%;
}

.view-more {
  width: 100%;
  height: 125px;
  border: none;
  background: rgba(0, 0, 0, .3);
}
<div class="content">
  <div class="content-title">
    <h1>Hello World</h1>
  </div>
</div>

<div class="page-body">
  <button class="view-more">View More</button>
  <div class="page-holder">
    <button>Click Me</button>
  </div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...