Compass 1.0 не использует все префиксы для Flexbox

#css #sass #prefix #flexbox #compass-sass

#css #sass #префикс #flexbox #compass-sass

Вопрос:

Я использую Compass 1.0, и когда я делаю @include display-flex; или любое другое свойство, связанное с flex, я получаю только

 display: -webkit-flex;
display: flex;
-webkit-flex-flow: row wrap;
flex-flow: row wrap;
  

и т.д. Нет префиксов -moz или -o . Есть идеи, почему?

Ответ №1:

Opera никогда не использовала -o- префикс для Flexbox. Он был представлен в движке Presto без префиксов. Только позже, когда поддержка свойств Flexbox (наряду с несколькими другими), -webkit- префикс также был поддержан.

Модуль Flexbox, который в настоящее время отображается в версии 1.0 alphas, только выдает свойства для текущей спецификации Flexbox. Из-за этого вы также не увидите -moz- префикс: движок Mozilla использует только префиксы для исходной спецификации Flexbox (например. display: -moz-box ). Mozilla поддерживает текущую спецификацию без префиксов начиная с 22.0 (хотя поддержка flex-wrap не существовала до 28.0). Вы также не увидите -ms- префикс, потому что версии IE, использующие префиксы, поддерживают более старый проект марта 2012 (например. display: -ms-flexbox ).

Теперь, если вас интересует набор миксинов, совместимых с Compass, который будет охватывать все ваши базы, я написал несколько:

Комментарии:

1. Очень полезный скрипт. Я просто вставил его, перекомпилировал, и это просто сработало. Теперь у меня есть flexbox, работающий на IE10 в течение 5 минут. Большое вам спасибо @cimmanon.