2015-04-30 3 views
2

Я считаю, что если я поместить изображение внутри ячейки таблицы, как это (JSFiddle):CSS: не точно Вертикальное выравнивание в таблице

<table style="height: 300px; border: 1px solid black"> 
    <tr> 
     <td><img src="https://www.google.com.hk/images/srpr/logo11w.png" /></td> 
    </tr> 
</table> 

Там будет небольшое пространство под изображением, что делает вертикальную Align не точно:

enter image description here enter image description here

знает любой, что здесь происходит?

Я попытался добавить vertical-align: middle в td, но это не имеет значения.

+0

Возможный дубликат [HTML 5 странно IMG всегда добавляет запас 3px в нижней части] (HTTP: // stackoverflow.com/questions/10844205/html-5-strange-img-always-adds-3px-margin-at-bottom). В частности, посмотрите на http://stackoverflow.com/a/10844318/3400962](http://stackoverflow.com/a/10844318/3400962) по причине, почему это происходит и как это исправить. –

ответ

3

Вы пытались добавить display: block в элемент img? Кажется, устраняет большинство проблем для вещей в таблицах.

img { 
 
    display: block; 
 
}
<table style="height: 300px; border: 1px solid black"> 
 
    <tr> 
 
    <td> 
 
     <img src="https://www.google.com.hk/images/srpr/logo11w.png" /> 
 
    </td> 
 
    </tr> 
 
</table>

JSFiddle

0

Вы можете исправить это с line-height: .8em;

0

Попробуйте так: Demo

* { 
    margin: 0; 
    padding: 0; 
} 
table { 
    background:red; 
    height: 300px; 
    border: 1px solid black; 
} 
tr { 
    background:#ccc; 
} 
img { 
    background:green; 
    display: block; 
} 
Смежные вопросы