Декорируем галерею с помощью CSS3

В данном уроке представлено несколько методов декорирования галереи изображений только средствами CSS. Для создания эффектов используются псевдо-элементы :before и :after, а также трансформации. Подобная техника позволяет обойтись без дополнительной разметки и кода JavaScript для автоматического оформления материалов сайта.

Разметка HTML

Код для галереи представляет собой простой неупорядоченный список без дополнительных избыточных элементов:

<ul class="gallery clip">
	<li>
		<img src="/images/sample-1.jpg" alt="картинка">
	</li>
	<li>
		<img src="/images/sample-2.jpg" alt="картинка">
	</li>
	<li>
		<img src="/images/sample-1.jpg" alt="картинка">
	</li>
</ul>

 

CSS

Ниже представлена общая часть стилей галереи для класса .gallery. Ключевой момент заключается в том, чтобы установить относительное позиционирование.

.gallery {
	margin: 0 0 25px;
	text-align: center;
}
.gallery li {
	display: inline-block;
	margin: 5px;
	list-style: none;
}
.gallery a {
	position: relative;
	display: inline-block;
}

Элемент :before

Теперь определим контейнер 30px x 60px с фоновым изображением скрепки для элемента a:before. Обратите внимание, что свойство content должно быть  пустым и объявленным в наборе правил CSS. Без объявления свойства content контейнер не будет выводиться.

.clip a:before {
	position: absolute;
	content: ' ';
	top: -5px;
	left: -4px;
	width: 30px;
	height: 60px;
	background: url(images/paper-clip.png) no-repeat;
}

Художественная рамка

Вы можете использовать метод для добавления любого графического элемента поверх изображения. В нашем примере просто устанавливается фоновое изображение и выравнивается положение и размеры.

.frame a:before {
	position: absolute;
	content: ' ';
	top: -22px;
	left: -23px;
	width: 216px;
	height: 166px;
	background: url(images/frame.png) no-repeat;
}

Галерея HTML5

Теперь сделаем более продвинутый вариант галереи с использованием разметки  HTML5. В примере используется теги <figure> для контейнера изображения и <figcaption> для названия.

<ul class="gallery tape">
	<li>
		<figure> 
			<img src="/images/sample-4.jpg" alt="image">
			<figcaption>Image Caption</figcaption>
		</figure>
	</li>
	<li>
		<figure>
			<img src="/images/sample-5.jpg" alt="image">
			<figcaption>Image Caption</figcaption>
		</figure>
	</li>
	<li>
		<figure> <img src="/images/sample-6.jpg" alt="image">
			<figcaption>Image Caption</figcaption>
		</figure>
	</li>
</ul>

CSS

В  коде CSS добавляем два элемента :before - один для <figure> и другой для <li>. Маскирующее изображение overlay.png используется для элемнета figure:before, а изображение полоски скотча  - для элемента a:before.

.tape li {
	width: 170px;
	padding: 5px;
	margin: 15px 10px;
	border: solid 1px #cac09f;
	background: #fdf8e4;
	text-align: center;
	box-shadow: inset 0 1px rgba(255,255,255,.8), 0 1px 2px rgba(0,0,0,.2);
}
.tape figure {
	position: relative;
	margin: 0;
}
.tape a:before {
	position: absolute;
	content: ' ';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(images/overlay.png) no-repeat;
}
.tape figcaption {
	font: 100%/120% Handlee, Arial, Helvetica, sans-serif;
	color: #787568;
}
.tape a:before {
	position: absolute;
	z-index: 2;
	content: ' ';
	top: -12px;
	left: 50%;
	width: 115px;
	height: 32px;
	margin-left: -57px;
	background: url(images/tape.png) no-repeat;
}

 

Трансформации CSS3

Добавим фон в виде пробкового покрытия и повернем изображение  с помощью трансформаций CSS3.

.transform {
	background: url(images/cork-bg.png);
	padding: 25px;
	border-radius: 10px;
	box-shadow: inset 0 1px 5px rgba(0,0,0,.4);
}
.transform li {
	border: none;
}

Селектор Nth

Для того, чтобы галерея выглядела более эффектно и натурально, будем случайным образом вращать изображения с помощью селектора Nth.

.transform li:nth-of-type(4n+1) {
	-webkit-transform: rotate(2deg);
}
.transform li:nth-of-type(2n) {
	-webkit-transform: rotate(-1deg);
}
.transform li:nth-of-type(4n+3) {
	-webkit-transform: rotate(2deg);
}


Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/uAXWrk-FM8Q/lessons.php

Читать комменты и комментировать

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



Защитный код
Обновить

Декорируем галерею с помощью CSS3 | | 2012-09-10 23:42:12 | | Статьи Web-мастеру | | В данном уроке представлено несколько методов декорирования галереи изображений только средствами CSS. Для создания эффектов используются псевдо-элементы :before и :after, а также трансформации. | РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
 
Поделиться с друзьями: