У меня есть изображение, которое установлено в vertical-align: text-top
внутри ячейки таблицы. В Internet Explorer это делает правильно, но Chrome делает неправильно:Добавление выровненного изображения в ячейку таблицы приводит к ошибке восстановления в Chrome и Firefox
Internet Explorer 10 (10.0.9200.16660):
Chrome 29 (29.0.1547.66 м):
Обновлено для включенияFirefox 23 (23.0.1):
Три браузеры, три модели поведения; но только IE - это то, что вы ожидаете.
fiddle the glaving on jsFiddle.
Волшебный ингредиент изображение в ячейке таблицы:
<td class="c1" rowspan="3">
<img src="data:image/png;base64,iVBORw0KGgoAAA....">
</td>
с клеткой стилизованной, как vertical-align: text-top
:
<style type="text/css">
.c1 {vertical-align: text-top; }
</style>
Единственный способ решения проблемы я нашел это удалить vertical-align: text-top
, Но что заставляет его вынести не так, как я хочу:
Поскольку Chrome является арбитром всех вещей хорошо и правильно, я должен делать что-то неправильно. Но что?
Примечание: Проблема не ограничивается встроенными изображениями данных-uri. Я просто использую это, поэтому проблема видна на jsFiddle.
'' - элемент "void" *. Как таковой запрещено иметь закрывающий тег. [W3C: HTML5] (http://www.w3.org/TR/html5/syntax.html#void-elements) * «Элементы Void имеют только начальный тег, конечные теги не должны указываться для элементов void». * Указание 'top' работает; хотя спецификация HTML должна быть обновлена, чтобы указать правильное поведение этого случая. –
Тем не менее, использование '' вместо '' кажется более удобным (я не говорил о закрывающем теге, а закрывал тэг). Кроме того, он больше не отмечает его красным (= ошибка) в jsfiddle. – weiglt