Задать вопрос

Появляющийся блок при наведение мыши

Привет, друзья.
В javascript я дубок, поэтому прощу помощи, мне нужен скрипт, чтобы при наведение мыши на картинку на нее накладывался:

background: rbga(0,0,0,.3);

И в центре блока:

<p>Заголовок</p>
<p>Текст</p>


p.s Цвет и текст я подкорректирую, по желанию можете добавить анимации какой-нибудь.
В итоге нужен такой результат при наведение на картинку - 3760d5d685634ce186df4a803f2de2ff.png
  • Вопрос задан
  • 22825 просмотров
Подписаться 7 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
структура html

<div class="block-wrap">
			<div class="block-img"></div>
			<div class="block-text">
				<h2>Заголовок</h2>
				<p>Текст</p>
			</div>
		</div>


структура css

.block-wrap{
    position: relative;
    overflow: hidden;
}
    .block-img{
        position: relative;
        width: 100%;
        height: auto;
    }
    .block-text{
        position: absolute;
        top: 0;
        left: 0;
        background: rbga(0,0,0,.3);
        color: #fff;
        opacity: 0;
        visibility: hidden;
width: 100%;
height: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
padding: 5%;
                -webkit-transition: all 0.2s ease;
                -moz-transition: all 0.2s ease;
                -o-transition: all 0.2s ease;
                -ms-transition: all 0.2s ease;
                transition: all 0.2s ease;
    }
    .block-wrap:hover .block-text{
        opacity: 0;
        visibility: visible;
    }
Ответ написан
Комментировать
GM2mars
@GM2mars
Без css анимации.
HTML верстка:
<div class="cont">
  <div class="overlay">
    <h1>Заголовок</h1>
    <p>Текст</p>
  </div>
  <img src="img1.jpg">
</div>

CSS стили:
.cont {
  width: 500px;
  height: 500px;
  position: relative;
}
.overlay {
  position: absolute;
  text-align: center;
  width: 100%;
  height: 100%;
  background: rbga(0, 0, 0, 0.3);
  display: none;
}

JavaScript(jQuery):
jQuery(document).on("hover", ".cont", function() {
  jQuery(this).children(".overlay").fadeIn("fast");
}, function() {
  jQuery(this).children(".overlay").fadeOut("fast");
});


Принцип простой, есть контейнер с фоновой заливкой цвета, в нем картинка, над картинкой абсолютно расположен блок с текстом, который скрыт (display: none).
При наведении мышкой на контейнер, показываем скрытый блок с текстом, и делаем прозрачность у картинки. На идеальное решение не претендует, но должно работать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы