Цвет фона не заполняет строку в CSS Сетка - PullRequest
2 голосов
/ 17 апреля 2020

Я пытался создать карту в чистом виде CSS, используя сетку. Я разделил карточку на 4 ряда. В последнюю строку я включил кнопку и хотел, чтобы цвет фона кнопки заполнил весь 4-й ряд. Но он не заполняется, когда я ставлю background-color:#F25F5C. Если я попытался увеличить ширину (добавив сетку или отображение встроенного блока к классу кнопки), вся сетка будет работать странно (я прикрепил скриншот этого). И даже overflow: hidden не работает. Что мне делать?

.cards {
  display: grid;
  grid-template-rows: 3fr 1fr 1fr 1fr;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 200px;
  height: auto;
  border: 1px solid #fff;
  background: #afafaf;
  border-radius: 15px;
}

.cards img {
  width: 100px;
  height: 100px;
  border-radius: 100px;
}

.btn-book {
  background: #F25F5C;
  color: #fff;
}
<div class="cards">
  <img src="Resources/Images/dsc0060.jpg" alt="paris-image" class="image">
  <h4>PARIS</h4>
  <p>$500/4 days</p>
  <a class="btn-book" href="#">Book Now</a>
</div>

Снимок экрана, когда я помещаю ширину:

Screenshot

Ответы [ 2 ]

0 голосов
/ 17 апреля 2020

используйте

display: block; margin-left: auto; margin-right: auto; для вас тег img.

.cards {
  display: grid;  
  grid-template-rows: 3fr 1fr 1fr 1fr;
  align-items: center;
  text-align: center;
  width: 200px;
  height: auto;
  border: 1px solid #fff;
  background: #afafaf;
  border-radius: 15px; 
}

.cards .image {
  width: 100px;
  height: 100px;
  border-radius: 100px;
  display: block;
  margin-left: auto;
  margin-right: auto; 
}

.btn-book {
  background: #F25F5C;
  color: #fff;
}
<div class="cards">

  <img src="http://placekitten.com/301/301" alt="paris-image" class="image">
  <h4>PARIS</h4>
  <p>$500/4 days</p>
  <a class="btn-book" href="#">Book Now</a>
</div>
0 голосов
/ 17 апреля 2020

Сделайте две корректировки для вашего контейнера сетки:

  1. Удалить justify-content: center.

  2. Удалить align-items: center.

Затем управляйте центрированием контента на уровне элемента сетки. Вот детали:

...