#javascript #css #vertical-alignment
#javascript #css #выравнивание по вертикали
Вопрос:
Ранее я спрашивал, как выровнять изображение по центру (с динамической шириной) внутри div, и кто-то ответил этим кодом:
Он работает корректно. Однако, когда я пытаюсь использовать тот же класс для другого изображения, другое изображение больше не центрируется по вертикали:
Теперь вы видите, что черное изображение размером 50×50 немного больше, чем должно быть. Я заметил, что только первое изображение выравнивается правильно. Если после этого я добавлю другие изображения с другой шириной и высотой (используя тот же класс), они будут смещены.
Может ли кто-нибудь помочь мне найти проблему, поскольку я на самом деле не знаком с javascript.
Ответ №1:
Вам нужно обернуть JavaScript, чтобы сделать все для всех совпадающих элементов, вместо того, чтобы вычислять высоту для одного и применять ко всем:
$('div.container_img img').each(function() {
var $img = $(this);
var h = $img.height();
$img.css('margin-top', h / -2 "px");
});
Ответ №2:
Попробуйте это: http://jsfiddle.net/timothyclifford/b4Bbd/7 /