Я думаю, у меня есть то, что вы ищете, используя только CSS (без Javascript) подход: демонстрационная страница
Внутри вашего первого элемента списка я вставил div:
div.caption {
width:200px; /* Because your images are 200px wide, this must match */
clear:both; /* This places the div after the floated image */
position:relative; /* Required to set positioning on the line below */
top:-100px; /* The div would normally appear at the bottom of the image. Move it up a little. */
margin-bottom:-500px; /* A hack because the div causes the li to have a larger bottom margin. Not sure how to get around this */
z-index:2 /* Will explain this later */
}
<li> ... <div class="caption">The quick brown fox jumped over the lazy dog</div></li>
И я добавил атрибуты z-index к вашим элементам li / a / img:
#work ul li, #work ul li a, #work ul li a img {
position: relative; /* z-index only works on positioned elements */
z-index: 1; /* Default z-index 1 */
display: block;
float: left;
}
#work ul li a:hover, #work ul li a:active {
position: relative; /* Hover/active z-index 3 */
z-index: 3;
}
Посмотрите, как использовать z-index , если вы не знакомы с ним. На тестовой странице заголовок div имеет более высокий z-индекс, чем обычное изображение, но более низкий z-индекс, чем изображение, наложенное мышью.
Это немного глупо, но есть возможности для улучшения. Кроме того, к вашему сведению, ваша страница выглядит неправильно в IE 7 - все изображения отображаются в одном столбце. Мой код может не нуждаться во взломе, если и после исправления разметки. =)