firefox - 为什么 Firefox 16改变了线性渐变的方向?

  显示原文与译文双语对照的内容
0 0

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排在前面。

现在帖子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?

时间:原作者:2个回答

0 0

The标准中规定角度是顺时针测量开始于0° = 向上。

使用角度

为了此参数,‘0deg’指向上方,并正角度表示顺时针旋转,所以‘90deg’点 [ sic] 朝右。

-moz-linear-gradient另一方面,使用极坐标 ( 我的重点) :

最后语义好奇心之间仍然存在的变量前缀和不带前缀的建议。 按照初始Apple主张,所有使用的变量前缀语法。 <angle>像极轴角定义,即with 0deg表示East 。 要使用CSS的其余部分一致的,规范定义的角度0deg表示North 。 防止站点使用前缀版本的属性获取突然被打破,即使顺应否则向前兼容最终语法,它保留原始角度定义( 0deg = 东部) 。 他们会切换到正确的spec当unprefixing属性。 Also,因为它们不兼容,gecko支持( 包括语法与关键字和不带前缀。 这里同样,不带关键字将除去﷨ unprefixing 。

原作者:
0 0

一个简单的技巧可以使用关键字 bottom而不是度。

原作者:
...