Лого www.SiteHere.ru

Оригинальная анимированная галерея на CSS3

Оригинальная анимированная галерея на CSS3

Появление технологии CSS3 позволило веб-дизайнерам представлять изображения в различных формах без использования jQuerу. И в этой статье я хотел показать вам простой способ оригинально оформить галерею с изображениями, при этом они будут еще и анимированными, и всё это без использования js-скриптов.

Пример галереи можно увидеть здесь:

Посмотреть примерСкачать

HTML часть

Изображения расположены в блоке <div> с классом photo-grid:

1
2
3
4
5
6
7
<div class="photo-grid">
        <img src="images/image1.jpg">
        <img src="images/image2.jpg">
        <img src="images/image3.jpg">
        .............................
        <img src="images/image25.jpg">
    </div>

CSS часть

Сейчас добавим изображениям абсолютное позиционирование, тень, поворот, и эффект при наведении:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
.photo-grid {
    margin-top: 160px;
    padding: 10px;
    position: relative;
    text-align: center;
}
.photo-grid img {
    background: none repeat scroll 0 0 #FFFFFF;
    box-shadow: 0 0 5px black;
    float: left;
    height: 172px;
    margin-top: -100px;
    padding: 10px;
    position: relative;
    transition: all 0.4s ease-in 0s;
    width: 172px;
    z-index: 2;
}
.photo-grid img:nth-child(2n) {
    transform: translate(10px, 0px) rotate(8deg);
}
.photo-grid img:nth-child(2n+1) {
    left: 25px;
    transform: translate(-10px, -30px) rotate(-5deg);
}
.photo-grid img:nth-child(3n) {
    left: 17px;
    top: -10px;
    transform: translate(-10px, -30px) rotate(-15deg);
}
.photo-grid img:nth-child(5n) {
    left: -8px;
    top: 20px;
}
.photo-grid img:nth-child(6n) {
    transform: translate(-10px, -30px) rotate(15deg);
}
.photo-grid img:nth-child(9n) {
    transform: translate(-10px, -30px) rotate(22deg);
}
.photo-grid img:hover {
    box-shadow: 15px 15px 20px rgba(0, 0, 0, 0.6);
    transform: rotate(360deg) scale(1.5);
    z-index: 10;
}

А также мы задали для изображений разные значения для свойства z-index для того чтобы изображения могли перекрывать друг друга и создавался эффект объема.

CSS часть

Вот и всё. Данная галерея очень простая, при желании можно ее усовершенствовать. Например, задать прозрачность для всех остальных изображений, если курсор находится над каким-то одним. Думаю данная галерея приживется у вас на сайте или блоге, так как она не использует никаких JS-скриптов и очень быстро загружается.

Успехов!

Источник: onextrapixel.com

Рейтинг статьи

Понравилась статья - расскажи друзьям! :)

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

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