[yandex2]
<li>
<a href=»#image-1″>
<img src=»адрес_превью_1″>
<span>Название изображения</span>
</a>
<div class=»lb-overlay» id=»image-1″>
<img src=»адрес_изображения_1_оригинального_размера»>
<div>
<h3>Название изображения</h3>
<p>Описание</p>
</div>
<a href=»#page» class=»lb-close»></a>
</div>
</li>
</ul>
<ul class=»lb-album»>
<li>
……
</li>
</ul>
</div>
<a href=»#id_следующего_изображения» class=»lb-next»>Следующее</a>
<ul class=»lb-album»>
<li>
<a href=»#image-1″>
<img src=»адрес_превью_1″>
<span>Название изображения</span>
</a>
<div class=»lb-overlay» id=»image-1″>
<img src=»адрес_изображения_1_оригинального_размера»>
<div>
<h3>Название изображения</h3>
<p>Описание</p>
<a href=»#image-4″ class=»lb-prev»>Предыдущее</a>
<a href=»#image-2″ class=»lb-next»>Следующее</a>
</div>
<a href=»#page» class=»lb-close»></a>
</div>
</li>
<li>
<a href=»#image-2″>
<img src=»адрес_превью_2″>
<span>Название изображения</span>
</a>
<div class=»lb-overlay» id=»image-2″>
<img src=»адрес_изображения_2_оригинального_размера»>
<div>
<h3>Название изображения</h3>
<p>Описание</p>
<a href=»#image-1″ class=»lb-prev»>Предыдущее</a>
<a href=»#image-3″ class=»lb-next»>Следующее</a>
</div>
<a href=»#page» class=»lb-close»></a>
</div>
</li>
<li>
<a href=»#image-3″>
<img src=»адрес_превью_3″>
<span>Название изображения</span>
</a>
<div class=»lb-overlay» id=»image-3″>
<img src=»адрес_изображения_3_оригинального_размера»>
<div>
<h3>Название изображения</h3>
<p>Описание</p>
<a href=»#image-2″ class=»lb-prev»>Предыдущее</a>
<a href=»#image-4″ class=»lb-next»>Следующее</a>
</div>
<a href=»#page» class=»lb-close»></a>
</div>
</li>
</ul>
</div>
id=»image-2″
id=»image-3″
[yandex]
.lb-album li > a,
.lb-album li > a img{
display: block;
}
/*скрываем большое изображение*/
.lb-overlay{
width: 0px;
height: 0px;
position: fixed;
overflow: hidden;
left: 0px;
top: 0px;
padding: 0px;
z-index: 99;
text-align: center;
}
/*позиционирование контейнера с названием, описанием изображения и навигацией*/
.lb-overlay > div{
position: relative;
width: 550px;
height: 80px;
margin: 40px auto 0px auto;
}
/*код закрытия LightBox*/
.lb-overlay a.lb-close{
background: url(lightbox-btn-close.png) no-repeat;
z-index: 1001;
position: absolute;
top: 43px;
left: 50%;
line-height: 26px;
text-align: center;
width: 16px;
height: 16px;
overflow: hidden;
margin-left: -8px;
opacity: 0;
}
/*навигация*/
.lb-prev, .lb-next{
text-indent: -9000px;
position: absolute;
top: -32px;
width: 24px;
height: 25px;
left: 50%;
opacity: 0.8;
filter: alpha(opacity=80); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=80)»; /*IE8*/
}
.lb-prev:hover, .lb-next:hover{
opacity: 1;
filter: alpha(opacity=99); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=99)»; /*IE8*/
}
.lb-prev{
margin-left: -30px;
background: transparent url(arrows.png) no-repeat top left;
}
.lb-next{
margin-left: 6px;
background: transparent url(arrows.png) no-repeat top right;
}
.lb-overlay:target {
width: auto;
height: auto;
bottom: 0px;
right: 0px;
padding: 80px 100px 120px 100px;
}
list-style: none outside none;
}
float: left;
margin: 5px;
position: relative;
}
width: 125px;
height: 94px;
position: relative;
padding: 10px;
background: #ebebeb;
-webkit-box-shadow: 1px 1px 2px #fff, 1px 1px 2px rgba(158,111,86,0.3) inset;
-moz-box-shadow: 1px 1px 2px #fff, 1px 1px 2px rgba(158,111,86,0.3) inset;
box-shadow: 1px 1px 2px #fff, 1px 1px 2px rgba(158,111,86,0.3) inset;
}
position: absolute;
width: 125px;
height: 94px;
top: 10px;
left: 10px;
text-align: center;
color: rgba(27,54,81,0.8);
text-shadow: 0px 1px 1px rgba(255,255,255,0.6);
font-size: 22px;
opacity: 0;
filter: alpha(opacity=0); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=0)»; /*IE8*/
background: rgb(241,210,194);
background: -moz-radial-gradient(center, ellipse cover, rgba(255,255,255,0.56) 0%, rgba(235,235,235,1) 100%);
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,rgba(255,255,255,0.56)), color-stop(100%,rgba(235,235,235,1)));
background: -webkit-radial-gradient(center, ellipse cover, rgba(255,255,255,0.56) 0%,rgba(235,235,235,1) 100%);
background: -o-radial-gradient(center, ellipse cover, rgba(255,255,255,0.56) 0%,rgba(235,235,235,1) 100%);
background: -ms-radial-gradient(center, ellipse cover, rgba(255,255,255,0.56) 0%,rgba(235,235,235,1) 100%);
background: radial-gradient(center, ellipse cover, rgba(255,255,255,0.56) 0%,rgba(235,235,235,1) 100%);
-webkit-transition: opacity 0.3s linear;
-moz-transition: opacity 0.3s linear;
-o-transition: opacity 0.3s linear;
-ms-transition: opacity 0.3s linear;
transition: opacity 0.3s linear;
}
.lb-album li > a:hover span{
opacity: 1;
filter: alpha(opacity=99); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=99)»; /*IE8*/
}
.lb-overlay{
width: 0px;
height: 0px;
position: fixed;
overflow: hidden;
left: 0px;
top: 0px;
padding: 0px;
z-index: 99;
text-align: center;
}
width: 0px;
height: 0px;
position: fixed;
overflow: hidden;
left: 0px;
top: 0px;
padding: 0px;
z-index: 99;
text-align: center;
background: rgb(26,26,26);
background: -moz-radial-gradient(center, ellipse cover, rgba(73,73,73,0.56) 0%, rgba(26,26,26,1) 100%);
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,rgba(73,73,73,0.56)), color-stop(100%,rgba(26,26,26,1)));
background: -webkit-radial-gradient(center, ellipse cover, rgba(73,73,73,0.56) 0%,rgba(26,26,26,1) 100%);
background: -o-radial-gradient(center, ellipse cover, rgba(73,73,73,0.56) 0%,rgba(26,26,26,1) 100%);
background: -ms-radial-gradient(center, ellipse cover, rgba(73,73,73,0.56) 0%,rgba(26,26,26,1) 100%);
background: radial-gradient(center, ellipse cover, rgba(73,73,73,0.56) 0%,rgba(26,26,26,1) 100%);
}
.lb-overlay:target a.lb-close{
opacity: 1;
filter: alpha(opacity=99); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=99)»; /*IE8*/
}
.lb-prev:hover, .lb-next:hover{
opacity: 1;
filter: alpha(opacity=99); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=99)»; /*IE8*/
}
.lb-overlay div p{
padding: 0px 20px;
width: 200px;
height: 60px;
}
.lb-overlay div h3{
font-size: 24px;
float: left;
text-align: right;
border-right: 1px solid rgba(235,235,235,0.4);
margin-top:10px;
}
.lb-overlay div p{
font-size: 16px;
font-family: Georgia, serif;
font-style: italic;
}
.lb-overlay div h3 span{
display: block;
line-height: 6px;
}
.lb-overlay div p{
font-size: 14px;
text-align: left;
float: left;
width: 260px;
}
position: relative;
color: rgba(235,235,235,0.8);
width: 550px;
height: 80px;
margin: 40px auto 0px auto;
text-shadow: 0px 1px 1px rgba(26,26,26,0.6);
}
height: 100%;
max-height: 100%;
position: relative;
opacity: 0;
filter: alpha(opacity=0); /* internet explorer */
-ms-filter:»progid:DXImageTransform.Microsoft.Alpha(opacity=0)»; /*IE8*/
-webkit-box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
-moz-box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
box-shadow: 0px 2px 7px rgba(0,0,0,0.2);
-webkit-transition: opacity 0.5s linear;
-moz-transition: opacity 0.5s linear;
-o-transition: opacity 0.5s linear;
-ms-transition: opacity 0.5s linear;
transition: opacity 0.5s linear;
}
height: 100%;
}
очень даже неплохо, но мне кажется, что слишком много кода для такой задачи))
Согласен. Тут стилей столько, что думаешь «нафиг надо», учитывая то, что в Firefox 10 навигация (стрелки туды-сюды) у меня лично работают криво, показывают какую-то обводку, и снимки передвигаются рывками.
Любителям делать галереи без анимации и jquery никак, а «нелюбителям» вообще лайтбокс нафиг не сдался ни в каком виде.
Очень нравилось читать на этом блоге про SEO, правда! И, к сожалению, как верстальщику совсем не понравилось читать про верстку. Поддерживаю на 100% предыдущий коммент, много кода для простой задачи. До конца читать не захотелось. Особенно учитывая количество опубликованных до Вас подобных топиков. На хабре, к примеру, есть несколько замечательных заметок с куда более аккуратным кодом, который позволяет делать куда более симпатичные эффекты.
Понаглею еще чуть-чуть и осмелюсь сказать, что этот блог — отличный, ну просто замечательный в плане статей о SEO. ИМХО как-то не хочется на нем читать о верстке.
Спасибо! Лично я впервые наткнулся на возможность сделать LightBox на CSS без jQuery. А посему — спасибо Вам за интересное и за разъяснение доходчивое. Мне, как начинающему — пригодилось!
Понравился пост, довольно подробно всё расписано. Только кода на css всё-таки довольно много. Но эффект — красивый!
Красиво. А как он будет на смартфонах?