высота 100 процентов на фоне не работает? - PullRequest
0 голосов
/ 28 марта 2019

В стеке много подобных вопросов, но ответы не решают мою проблему. Как вы видите, я пытаюсь создать этот небольшой текст поверх изображения, создав фоновое изображение для родительского div текстов.Изображение не показывается из-за того, что изображение не имеет никакой высоты, я также не могу дать 100% высоты, быстрый поиск в стеке говорит, что html 100% дает из-за того, что родитель должен иметь некоторую высоту, но это не решает проблему.,Мне нужен некоторый контроль высоты, поэтому я хочу использовать%.Конечно, я не хочу использовать значение px

мой код

h1, h2, h3, h4, h5, h6 {
  font-family: 'Teko', sans-serif;
}
html {
  font-size: 18px;
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
 }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
 }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
 }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1400px;
 }
}
h1, .h1 {
  font-size: 3.815rem;
}
h2, .h2 {
  font-size: 2.441rem;
}
h3, .h3 {
  font-size: 1.563rem;
}
h4, .h4 {
  font-size: 1.25rem;
}

html, body {
      height: 100%;
  }
  
.cta-location .cta-location-bg {
  background-image: url("https://www.dropbox.com/s/5x8p2z5cvip5u38/chicago.jpg?dl=1");
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.cta-location .cta-location-text-content {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
}
<!DOCTYPE html>
<html lang="en">

<head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="X-UA-Compatible" content="ie=edge">
   <title>slick slider</title>
   <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
      integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
   <link href="http://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css" rel="stylesheet">

   <link rel="stylesheet"
      href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.2/css/bootstrap-select.min.css">
   <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">

   <link rel="stylesheet" href="css/style.css">
</head>

<body>

   <div class="my-6">

      <div class="cta-location h-100">
         <div class="bg-dark text-white cta-location-bg">
            <div class="container d-flex align-items-center">
               <div class="row w-100">
                  <!-- <div class="text-left col-lg-4 col-sm-12 cta-location-text-content"> -->
                        <div class="cta-location-text-content">

                     <h2 class="card-title ">
                        Your Success, Without Borders
                     </h2>
                     <p class="card-text ">
                        Our global network of strategic locations puts us close to your operations, so you can get the
                        products, service and support you need fast.
                     </p>
                     <div class="">
                        <a href="" class="btn btn-primary">Find a location</a>
                     </div>
                  </div>
               </div>
            </div>
         </div>
      </div>
   </div>






   <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"
      integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
      crossorigin="anonymous"></script>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
      integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
      crossorigin="anonymous"></script>
   <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
      integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
      crossorigin="anonymous"></script>
   <script src="./js/extra-jquery.js"></script>

</body>

</html>

Ответы [ 2 ]

1 голос
/ 28 марта 2019

Несколько проблем здесь, но особенно ваш контент абсолютно позиционирован так, что все контейнеры разрушаются и имеют нулевую высоту. Это правило, которое я изменил, чтобы, по крайней мере, заставить фон появляться, вы можете видеть, что я закомментировал там почти все:

.cta-location .cta-location-text-content {
  /* text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); */
  color: white;
}

Вам потребуется другой подход к центрированию контента, кроме position: absolute.

h1, h2, h3, h4, h5, h6 {
  font-family: 'Teko', sans-serif;
}
html {
  font-size: 18px;
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
 }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
 }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
 }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1400px;
 }
}
h1, .h1 {
  font-size: 3.815rem;
}
h2, .h2 {
  font-size: 2.441rem;
}
h3, .h3 {
  font-size: 1.563rem;
}
h4, .h4 {
  font-size: 1.25rem;
}

html, body {
      height: 100%;
  }
  
.cta-location .cta-location-bg {
  background-image: url("https://www.dropbox.com/s/5x8p2z5cvip5u38/chicago.jpg?dl=1");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.cta-location .cta-location-text-content {
  /* text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); */
  color: white;
}
<!DOCTYPE html>
<html lang="en">

<head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="X-UA-Compatible" content="ie=edge">
   <title>slick slider</title>
   <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
      integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
   <link href="http://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css" rel="stylesheet">

   <link rel="stylesheet"
      href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.2/css/bootstrap-select.min.css">
   <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">

   <link rel="stylesheet" href="css/style.css">
</head>

<body>

   <div class="my-6">

      <div class="cta-location h-100">
         <div class="bg-dark text-white cta-location-bg">
            <div class="container d-flex align-items-center">
               <div class="row w-100">
                  <!-- <div class="text-left col-lg-4 col-sm-12 cta-location-text-content"> -->
                        <div class="cta-location-text-content">

                     <h2 class="card-title ">
                        Your Success, Without Borders
                     </h2>
                     <p class="card-text ">
                        Our global network of strategic locations puts us close to your operations, so you can get the
                        products, service and support you need fast.
                     </p>
                     <div class="">
                        <a href="" class="btn btn-primary">Find a location</a>
                     </div>
                  </div>
               </div>
            </div>
         </div>
      </div>
   </div>






   <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"
      integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
      crossorigin="anonymous"></script>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
      integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
      crossorigin="anonymous"></script>
   <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
      integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
      crossorigin="anonymous"></script>
   <script src="./js/extra-jquery.js"></script>

</body>

</html>
0 голосов
/ 28 марта 2019

Изменение height: 100% на height: 100vh решит вашу проблему, я надеюсь, что она вам поможет. Спасибо

h1, h2, h3, h4, h5, h6 {
  font-family: 'Teko', sans-serif;
}
html {
  font-size: 18px;
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
 }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
 }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
 }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1400px;
 }
}
h1, .h1 {
  font-size: 3.815rem;
}
h2, .h2 {
  font-size: 2.441rem;
}
h3, .h3 {
  font-size: 1.563rem;
}
h4, .h4 {
  font-size: 1.25rem;
}

html, body {
      height: 100%;
  }
  
.cta-location .cta-location-bg {
  background-image: url("https://www.dropbox.com/s/5x8p2z5cvip5u38/chicago.jpg?dl=1");
  height: 100vh;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.cta-location .cta-location-text-content {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
}
<!DOCTYPE html>
<html lang="en">

<head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta http-equiv="X-UA-Compatible" content="ie=edge">
   <title>slick slider</title>
   <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
      integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
   <link href="http://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css" rel="stylesheet">

   <link rel="stylesheet"
      href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.2/css/bootstrap-select.min.css">
   <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">

   <link rel="stylesheet" href="css/style.css">
</head>

<body>

   <div class="my-6">

      <div class="cta-location h-100">
         <div class="bg-dark text-white cta-location-bg">
            <div class="container d-flex align-items-center">
               <div class="row w-100">
                  <!-- <div class="text-left col-lg-4 col-sm-12 cta-location-text-content"> -->
                        <div class="cta-location-text-content">

                     <h2 class="card-title ">
                        Your Success, Without Borders
                     </h2>
                     <p class="card-text ">
                        Our global network of strategic locations puts us close to your operations, so you can get the
                        products, service and support you need fast.
                     </p>
                     <div class="">
                        <a href="" class="btn btn-primary">Find a location</a>
                     </div>
                  </div>
               </div>
            </div>
         </div>
      </div>
   </div>






   <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"
      integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
      crossorigin="anonymous"></script>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
      integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
      crossorigin="anonymous"></script>
   <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
      integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
      crossorigin="anonymous"></script>
   <script src="./js/extra-jquery.js"></script>

</body>

</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...