Подтвердить что ты не робот

Почему Firefox 16 изменил направление моих линейных градиентов?

Пример CSS:

background-image: -moz-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: -ms-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: -o-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: -webkit-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: linear-gradient(90deg, #e8f0ff, #ffffff);

Это привело к линейному градиенту, идущему от #e8f0ff внизу, до #fff вверху.

Post-Firefox 16 (выпущенный несколько дней назад), теперь градиент идет от #e8f0ff слева, до #fff справа.

Когда я удаляю специфический для поставщика CSS и оставляю только:

background-image: linear-gradient(90deg, #e8f0ff, #ffffff);

Ничего не происходит. Но когда я удаляю эту строку и оставляю только специфические для вендора стили:

background-image: -moz-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: -ms-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: -o-linear-gradient(90deg, #e8f0ff, #ffffff);
background-image: -webkit-linear-gradient(90deg, #e8f0ff, #ffffff);

Он исправляет проблему.

Итак, что здесь происходит в FF16? Значения Xdeg, начиная с нового направления, объединяются ли они только в определенных ситуациях? Я не могу понять, почему он будет делать 180deg с обоими или только с общим, но только с 90deg, если это только поставщик.

Вопрос в том, каковы особенности этого нового поведения в Firefox и какое самое широкое, большинство стандартов, совместимое с решениями для веб-сайтов, которые теперь имеют свои градиенты в FF16, неправильно?

4b9b3361

Ответ 1

Стандарт определяет, что углы измеряются по часовой стрелке, начиная с 0 & deg; = вверх.

с использованием углов

В целях этого аргумента "0deg указывает вверх, а положительные углы представляют вращение по часовой стрелке, поэтому" 90deg point [sic] " право.

-moz-linear-gradient, с другой стороны, использует полярные координаты (внимание мое):

Последнее семантическое любопытство все еще существует между префиксными вариантами и предложением без предварительного предложения. После первоначального предложения Apple префиксные варианты синтаксиса используют an <angle>, определенные как полярные углы, то есть с 0deg, представляющим Восток. Чтобы быть согласованным с остальной частью CSS, спецификация определяет угол с 0deg, представляющий Север. Чтобы сайты, использующие префиксную версию этого свойства, внезапно нарушались, даже при адаптации к окончательному синтаксису, совместимому с будущим, они сохраняют исходное определение угла (0дег = Восток). Они будут переключаться на правильную спецификацию при непредсказующем свойстве. Кроме того, поскольку они не являются несовместимыми, Gecko поддерживает, префикс, как синтаксис с ключевым словом, так и без него. И здесь синтаксис без ключевого слова будет удаляться при непрозрачности.

Ответ 2

Простым взломом может быть использование ключевого слова bottom вместо градусов.