Ответ 1
Flexbox - технология CSS3. Это означает, что он относительно новый, и некоторые браузеры не обеспечивают полную поддержку гибких свойств.
Здесь прогон:
-
IE 8 и 9 не поддерживают flexbox. Если вы хотите использовать свойства flex в этих браузерах, не беспокойтесь тратить свое время. A Flexbox polyfill сделал раунды какое-то время, но это не сработало и больше не поддерживается.
-
IE 10 поддерживает предыдущую версию flexbox и требует префиксы поставщика. Имейте в виду, что некоторые свойства текущей спецификации не поддерживаются в IE10 (например,
flex-grow
,flex-shrink
иflex-basis
). См. Flexbox 2012 Индекс свойств. -
IE 11 хорош, но глючит. Он основан на текущем стандарте flexbox. Для некоторых проблем см. Вкладку ИЗВЕСТНЫЕ ВОПРОСЫ на эту страницу. Также см.: свойство flex не работает в IE
-
С Chrome, Firefox и Edge вы все вокруг. Вы найдете незначительные ошибки и несоответствия, но обычно есть простые исправления. Вам нужно знать "Подразумеваемый минимальный размер шрифта" , который иногда вызывает проблемы с размерами и полосой прокрутки.
-
Варианты Safari 9 и выше поддерживают текущую спецификацию flexbox без префиксов. Однако для старых версий Safari требуется префикс
-webkit-
. Иногдаmin-width
иmax-width
вызывают проблемы с выравниванием, которые могут быть устранены с помощью эквивалентовflex
. См. Элементы Flex не правильно укладываются в Safari
Полный обзор поддержки браузера flexbox см. на этой странице: http://caniuse.com/#search=flex
Для быстрого добавления многих (но не обязательно всех) префиксов поставщиков используйте Autoprefixer. Для Safari см. в этой статье для префиксов -webkit-
, которые не содержат некоторые префиксные генераторы.
Список общих ошибок Flex и их обходные пути см. Flexbugs.
Кроме того, на этом сайте есть: