Hover – Эффекты для блоков с заголовками

Немножко свежих идей для красивого оформления блоков с заголовками при наведении на них курсора. Тонкие линии, белый цвет – ничего лишнего. Будем использовать 3D transform и transition для псевдо-элементов – работать данные эффекты будут только в современных браузерах.
К сожалению, не все эффекты с текстом в Firefox происходят плавно, может в следующих версиях ситуация улучшится.

Иконки используемые в демке Feather icon set от Cole Bemis.

HTML

Для разметки используем сетку с figure:

<div class="grid">
 
    <figure class="effect-lily">
        <img src="img/1.jpg" alt="img01"/>
        <figcaption>
            <h2>Nice <span>Lily</span></h2>
            <p>Lily likes to play with crayons and pencils</p>
            <a href="#">View more</a>
        </figcaption>
    </figure>
 
    <!-- ... -->
    
</div>

 

CSS

Пример стилей для одного из блоков.

Данный эффект назвали “Sadie“.

У нас тут есть псевдо-элемент с линейным градиентом снизу, и дополнительным появляющимся текстом. Также заголовок будет изменять цвет:

figure.effect-sadie figcaption::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(72,76,97,0) 0%, rgba(72,76,97,0.8) 75%);
    content: '';
    opacity: 0;
    transform: translate3d(0,50%,0);
}
 
figure.effect-sadie h2 {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    color: #484c61;
    transition: transform 0.35s, color 0.35s;
    transform: translate3d(0,-50%,0);
}
 
figure.effect-sadie figcaption::before,
figure.effect-sadie p {
    transition: opacity 0.35s, transform 0.35s;
}
 
figure.effect-sadie p {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 2em;
    width: 100%;
    opacity: 0;
    transform: translate3d(0,10px,0);
}
 
figure.effect-sadie:hover h2 {
    color: #fff;
    transform: translate3d(0,-50%,0) translate3d(0,-40px,0);
}
 
figure.effect-sadie:hover figcaption::before ,
figure.effect-sadie:hover p {
    opacity: 1;
    transform: translate3d(0,0,0);
}

 

Остальные общие стили для сетки и индивидуальные стили для каждого блока с эффектами ищите в content.css.

Пример:

 

See the Pen hover-Effekt18 by vavik (@vavik96) on CodePen.


Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.