Задать вопрос
vladislavkalnaus
@vladislavkalnaus
Интернет предприниматель

Как можно реализовать плавное появление текста на картинке?

Как можно реализовать плавное появление текста на картинке?
Пример сайта Тимберлейка внизу 4 блока. Как реализовать такой эффект?
justintimberlake.com
  • Вопрос задан
  • 10992 просмотра
Подписаться 2 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 4
Sprime
@Sprime
HTML-верстальщик
HTML:
<div class="container">
    <div class="block">
        <img src="http://groundctrl.s3.amazonaws.com/clients/justin-timberlake/media/03/11/feature_images/assets/original.VdBDxo14evIQMNj14uZiR-N623UIA0uve9ZaHPbqpGs.jpg" alt="">
        <a href="#"><span>Some text</span></a>
    </div>
    
    <div class="block">
        <img src="http://groundctrl.s3.amazonaws.com/clients/justin-timberlake/media/01/06/feature_images/assets/original.rcb9s2aCheVeAzuiWpf1nR_qLoDvawEYuRuXApi6tcI.jpg" alt="">
        <a href="#"><span>Some text</span></a>
    </div>
        
    <div class="block">
        <img src="http://groundctrl.s3.amazonaws.com/clients/justin-timberlake/site/home/JoinTheTNKids.jpg" alt="">
        <a href="#"><span>Some text</span></a>
    </div>
        
    <div class="block">
        <img src="http://groundctrl.s3.amazonaws.com/clients/justin-timberlake/site/home/tourPhotos.jpg" alt="">
        <a href="#"><span>Some text</span></a>
    </div>
</div>

CSS:
.container:before,
.container:after {
    clear: both;
    content: '';
    line-height: 0;
    display: block;
}

.block {
    width: 25%;
    float: left;
    background: #aaa;
    position: relative;
}
.block img {
    display: block;
    max-width: 100%;
}
.block a {
    top: 0;
    left: 0;
    opacity: 0;
    color: #fff;
    width: 100%;
    height: 100%;
    display: block;
    text-align: center;
    visibility: hidden;
    position: absolute;
    text-decoration: none;
    background: rgba(0,0,0,.5);
    -webkit-transition: all 0.2s;
            transition: all 0.2s;
}
.block a span {
    color: #fff;
    padding: 3px 5px;
    position: absolute;
    bottom: 0; right: 0;
    background: rgba(143, 0, 0, 1);
}
.block:hover a {
    opacity: 1;
    visibility: visible;
}

jsfiddle.net
Ответ написан
Комментировать
@vista1x
Я, возможно, не очень крут в css, но делается это как-то так: JSFiddle
Ответ написан
Комментировать
Machez
@Machez
Бу!
Если речь идет о появлении текста при наведении, то почитайте про CSS свойство transition
Ответ написан
Комментировать
lacrim
@lacrim
Отшибленный на всё голову экспериментатор.
За основу можно взять анимации из фреймворка Animate.css
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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