выровнять изображение по вертикали в div [duplicate]

На этот вопрос уже есть ответ:

Как вертикально выровнять изображение внутри div? 34 ответа

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

.img_thumb {
    float: left;
    height: 120px;
    margin-bottom: 5px;
    margin-left: 9px;
    position: relative;
    width: 147px;
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 3px;
}

.img_thumb img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
}

<div class="img_thumb">
    <a class="images_class" href="large.jpg" rel="images"><img src="small.jpg" title="img_title" alt="img_alt" /></a>
</div>

Насколько я знаю, мне нужно "display: block;" разместить изображение в центре, и это работает. Также в уроках я нахожу много ответов, но они не являются «полезными», потому что все мое изображение НЕ на одной высоте!