@Secret73

Как сделать изменение ширины блока div при наведении на него?

Всем привет. Верстка на bootstrap4.
Вот кусок верстки. При адаптации картинка background обрезается. Подскажите пожалуйста как сделать ,чт о бы при наведении на .col .bg ширина блока плавно увеличивалась и он накладывался на соседние div поверх, что бы не было смещения во время наведения. Пробывал разными способами, но ни как не получается сделать без смещения соседних элементов
https://jsfiddle.net/tuyaqy9y/
<div class="container-fluid">
      <div class="row no-margin">
        <div class="col bg ufw" onClick="document.location='ufashionweek.html'">
            <div class="show-block">
              <div class="site-name">Название сайта</div>
              Описание сайта
            </div>
        </div>
        <div class="col bg hlorella" onClick="document.location='hlorella.html'">
          <div class="show-block">
            <div class="site-name">Название сайта</div>
            Описание сайта
          </div>
        </div>
        <div class="col bg gc" onClick="document.location='green-city.html'">
          <div class="show-block">
            <div class="site-name">Название сайта</div>
            Описание сайта
          </div>
        </div>
        <div class="col bg praider" onClick="document.location='praider.html'">
          <div class="show-block">
            <div class="site-name">Название сайта</div>
            Описание сайта
          </div>
        </div>
        <div class="col bg pogrebok" onClick="document.location='pogrebok.html'">
          <div class="show-block">
            <div class="site-name">Название сайта</div>
            Описание сайта
          </div>
        </div>
      </div>
    </div>

.bg {
  background-size: cover;
  height: 100%;
  overflow: hidden;
}

.bg:hover .show-block {
  margin-bottom: 0;
}

.bg:hover:after {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0.6)));
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.6) 100%);
  background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.6) 100%);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.6) 100%);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.bg.ufw {
  background: url('../img/ufw.png') no-repeat left;
  background-size: cover;
}

.bg.hlorella {
  background: url('../img/hlorella.png') no-repeat left;
  background-size: cover;
}
.show-block {
  font-size: 42px;
  line-height: 50px;
  font-weight: bold;
  color: #ffffff;
  text-align: right;
  position: absolute;
  bottom: 0px;
  margin-bottom: -180px;
  -webkit-transition: margin 0.5s linear;
  -o-transition: margin 0.5s linear;
  transition: margin 0.5s linear;
  right: 10px;
  min-height: 150px;
  z-index: 2;
}

.show-block .site-name {
  background: -webkit-linear-gradient(329.16deg, #1C84FF 39.48%, #FC3D00 163.2%);
  background: -o-linear-gradient(329.16deg, #1C84FF 39.48%, #FC3D00 163.2%);
  background: linear-gradient(120.84deg, #1C84FF 39.48%, #FC3D00 163.2%);
  font-size: 18px;
  text-align: center;
  line-height: 25px;
}
  • Вопрос задан
  • 550 просмотров
Решения вопроса 1
@CODALSD
.bg {
  background-size: cover;
  height: 100%;
  overflow: hidden;
  transition: ease all 0.80s;
}

.bg:hover .show-block {
  margin-bottom: 0;
}
.bg:hover:first-child {
  padding-right:100px;
  margin-right:-85px;
  transition: ease all 0.80s;
  z-index:100;
}
.bg:hover {
  padding:0 100px;
  margin:0 -85px;
  transition: ease all 0.80s;
  z-index:100;
}
.bg:hover:last-child {
  padding-left:100px;
  margin-left:-85px;
  transition: ease all 0.80s;
  z-index:100;
}


решение на скорую руку и по колхозному ,)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
newdecline
@newdecline
Front-end-developer
Что бы не смещал надо позиционировать его абсолютно
Что бы плавно было применить транзишн
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 22:26
3500 руб./за проект
22 нояб. 2024, в 21:47
3000 руб./за проект
22 нояб. 2024, в 21:44
50000 руб./за проект