Почему IE11 с display: flex не корректно показывает svg-картинку, у которой задан width: auto?

Почему, когда использую flex, IE11 не корректно отображается svg-картинку, у которой width: auto?
Без flex контейнера, или с указанием конкретной ширины, картинка отображается верно.

test.svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 282 282" version="1">
<path fill-rule="evenodd" stroke="#EC4E00" stroke-width="13" fill="#01AE5D" d="M6 6h263v263H6V6z"/>
</svg>
index.html
<!DOCTYPE html>
<html lang="en">
<head>
	<style>
		.flex {
			display: flex;
		}
		img {
			outline: 1px solid lime;
			height: 70px;
			width: auto;
		}
	</style>
</head>
<body>
	<a href="#" class="flex">
		<img src="test.svg">
		<img src="http://placekitten.com/400/600">
	</a>
</body>
</html>


В IE11 вижу:
5beb444ec4975996001690.png

Если задать width и height 100px или выношу из flex, отображается верно:
5beb45aa48a0d871133241.png
  • Вопрос задан
  • 414 просмотров
Решения вопроса 1
Tolly
@Tolly Автор вопроса
IE9-11 desktop & mobile don't properly scale SVG files. Adding height, width, viewBox, and CSS rules seem to be the best workaround.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rikazavr
@Rikazavr
web design hippie
IE11 поддерживает флексы частично, есть баги

У него возникают проблемы с шириной блока, если он лежит внутри флекс-родителя. Попробуй подсмотреть решения здесь
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы