Выровнять изображение по левому краю внизу

Пытаюсь создать WEB-интерфейс для моей местной коллекции комиксов. Внешний вид должен быть очень похож на iBooks от Apple- обложки книг лежат на книжных полках. Крышки похожи, но не идентичны по высоте и ширине. Не могу понять, как сдвинуть обложки изображений в конец div без указания ширины содержащего div. Переход с абсолютного внутреннего родственника просто складывает крышки в кучу.

HTML:

<div class="cover"><a href="#"><img src="cover1.jpg"></a></div>
<div class="cover"><a href="#"><img src="cover2.jpg"></a></div>
<div class="cover"><a href="#"><img src="cover3.jpg"></a></div>

CSS:

body {background-image: url(http://image.bayimg.com/oaddpaaea.jpg); background-repeat: repeat;}
.cover {float: left; height: 258px; border: 1px solid red; margin: 0px 5px 25px 5px;}
.cover img {border: 1px solid green; -webkit-box-shadow: 0 8px 6px -6px black; -moz-box-shadow: 0 8px 6px -6px black; box-shadow: 0 8px 6px -6px black;}

Пример jsFiddle: http://jsfiddle.net/NATqD/

3 ответа

Решение

Попробуйте этот CSS:

.cover {  float: left; height: 258px;line-height: 258px;  border: 1px solid red; margin: 0px 5px 25px 5px;}
.cover img {vertical-align: bottom; border: 1px solid green; -webkit-box-shadow: 0 8px 6px -6px black; -moz-box-shadow: 0 8px 6px -6px black; box-shadow: 0 8px 6px -6px black;}

Вы добавляете line-height: 258px чтобы соответствовать высоте обложки div. затем vertical-align: bottom на изображениях. Рабочий пример:

http://jsfiddle.net/NATqD/6/

Это кажется самым простым для меня:

<div class="cover">
    <a href="#"><img src="http://www.emeraldinsight.com/fig/53_10_1108_S0731-9053_2009_0000024005.png"></a>
    <a href="#"><img src="http://roborfid.dyndns.org/data/book_images/backs_small/SIWE_R_GM00404130.jpg"></a>
    <a href="#"><img src="http://roborfid.dyndns.org/data/book_images/backs_small/SIWE_R_GM00624371.jpg"></a>
    <a href="#"><img src="http://www.lauren-myers.com/_img/right_arrow.jpg"></a>
    <a href="#"><img src="http://www.gotohoroscope.com/img/bg_00.gif"></a>
    <a href="#"><img src="http://roborfid.dyndns.org/data/book_images/backs_small/SIWE_R_GM00404091.jpg"></a>
    <a href="#"><img src="http://www.startplay.co.uk/images/play.png"></a>
    <a href="#"><img src="https://www.educorporatebridge.com/old_back_up_16-07-12/images/foundcourses.png"></a>
    <a href="#"><img src="http://s1.hao123.com/index/images/temple_bg.gif"></a>
</div>

.cover {
    line-height: 258px;
    height: 258px; 
    border: 1px solid red; 
    margin: 0px 5px 25px 5px;
}

http://jsfiddle.net/NATqD/5/

Работает в Firefox и Chrome.

Добавьте положение: относительно.cover, это позволяет вам добавить положение: абсолютное к изображению, и, таким образом, вы можете расположить изображения абсолютно по отношению к div.

http://jsfiddle.net/NATqD/1/

Другие вопросы по тегам