Back to the index.
This is the detailed mobile compatibility table for all sorts of gradients. It’s split into new and middle syntax.
Last major update on 26 November 2014.
This table tests if the browser support either the W3C-approved new syntax, or the -webkit-
-prefixed middle syntax. Other prefixes do not count.
First, who uses middle or new syntax?
iOS | Android | Chromium | UC | Black |
Nokia Xpress | UC Mini | Opera | Nin |
Dol |
IE | Firefox | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
7 | 8 | 2 | 4 | Sa | Puf | Cy | Xia | Op | Go | 9 | 10 | 6 | 7 | 10 | Mini | Classic | 9 | 10 | 11 | And | OS | |||||
New syntax
|
Yes | No | Yes | No | No | No | Yes | No | No | Yes | Yes | |||||||||||||||
background: linear-gradient(90deg,red 10%,yellow 30%,green 60%); background: radial-gradient(circle closest-corner at 60% bottom,red 10%,yellow 30%,green 60%); |
Middle syntax
-webkit-
|
Yes | No | Yes | Yes | Yes | No | Yes | No | Incom |
No | No | Yes | No | ||||||||||||
background: -webkit-linear-gradient(0deg,red 10%,yellow 30%,green 60%); background: -webkit-radial-gradient(60% bottom,circle closest-corner,red 10%,yellow 30%,green 60%); Note: what I judge here is compatibility with the
|
Then the actual compatibility. A browser gets a Yes if it supports one of the two tested syntaxes.
Android 4.0 note: it gives wrong results with radial middle syntax. I assume it’s using old WebKit syntax, but I don’t have tests for them. Android 4.1 does everything right.
Puffin note: it supports everything, but seems to treat every gradient as an image, and a slow-loading one at that. Apparently gradients are created on the server and sent over to the client really slowly.
iOS | Android | Chromium | UC | Black |
Nokia Xpress | UC Mini | Opera | Nin |
Dol |
IE | Firefox | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
7 | 8 | 2 | 4 | Sa | Puf | Cy | Xia | Op | Go | 9 | 10 | 6 | 7 | 10 | Mini | Classic | 9 | 10 | 11 | And | OS | |||||
Defining the colors of any gradient, in either syntax | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | bug | Yes | ||||||||||||
background: -webkit-linear-gradient(0deg,red 10%,yellow 30%,green 60%); background: linear-gradient(90deg,red 10%,yellow 30%,green 60%); background: -webkit-radial-gradient(60% bottom,circle closest-corner,red 10%,yellow 30%,green 60%); background: radial-gradient(circle closest-corner at 60% bottom,red 10%,yellow 30%,green 60%);
|
||||||||||||||||||||||||||
Repeating a gradient | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-repeating-linear-gradient(0deg,red 10%,yellow 30%,green 60%,red 80%); background: repeating-linear-gradient(90deg,red 10%,yellow 30%,green 60%,red 80%); background: -webkit-repeating-radial-gradient(60% bottom,circle closest-corner,red 10%,yellow 30%,green 60%,red 80%); background: repeating-radial-gradient(circle closest-corner at 60% bottom,red 10%,yellow 30%,green 60%,red 80%); |
||||||||||||||||||||||||||
Angular definition of the direction of a linear gradient | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-linear-gradient(0deg,red 10%,yellow 30%,green 60%); background: linear-gradient(90deg,red 10%,yellow 30%,green 60%); Note: fairly major difference between new and middle syntax. new angle = 90 - middle angle |
||||||||||||||||||||||||||
Keywords for determining the direction of a linear gradient | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-linear-gradient(left,red 10%,yellow 30%,green 60%); background: linear-gradient(to right,red 10%,yellow 30%,green 60%); Note: fairly major difference between new and middle syntax. |
||||||||||||||||||||||||||
iOS | Android | Chromium | UC | Black |
Nokia Xpress | UC Mini | Opera | Nin |
Dol |
IE | Firefox | |||||||||||||||
7 | 8 | 2 | 4 | Sa | Puf | Cy | Xia | Op | Go | 9 | 10 | 6 | 7 | 10 | Mini | Classic | 9 | 10 | 11 | And | OS | |||||
Position of the center of a radial gradient | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-radial-gradient(60% bottom,circle closest-corner,red 10%,yellow 30%,green 60%); background: radial-gradient(circle closest-corner at 60% bottom,red 10%,yellow 30%,green 60%); Light syntactic differences.
|
||||||||||||||||||||||||||
Keywords for determining where the radial gradient ends | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-radial-gradient(60% bottom,circle closest-corner,red 10%,yellow 30%,green 60%); background: radial-gradient(circle closest-corner at 60% bottom,red 10%,yellow 30%,green 60%); Light syntactic differences.
|
||||||||||||||||||||||||||
Length units for determining where the radial gradient ends | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-radial-gradient(60% bottom,5em 75%,red 10%,yellow 30%,green 60%); background: radial-gradient(5em 75% at 60% bottom,red 10%,yellow 30%,green 60%); Note: two values are required in middle syntax, even if they are the same (i.e. the gradient is a circle). Note: do not mix with shape keywords.
|
||||||||||||||||||||||||||
Shape of radial gradient | Yes | - | Yes | Yes | slow | Yes | Yes | - | Yes | - | Yes | - | Yes | Yes | ||||||||||||
background: -webkit-radial-gradient(60% bottom,circle closest-corner,red 10%,yellow 30%,green 60%); background: radial-gradient(circle closest-corner at 60% bottom,red 10%,yellow 30%,green 60%); Note: do not mix with size in length units.
|
||||||||||||||||||||||||||
Incompatibility in radial gradient syntax | No | - | No | No | No | - | No | - | No | - | Yes | No | Yes | |||||||||||||
background: -webkit-radial-gradient(60% bottom,ellipse 5em 75%,red 10%,yellow 30%,green 60%); background: radial-gradient(ellipse 5em 75% at 60% bottom,red 10%,yellow 30%,green 60%); Is mixing shape keywords and size allowed in lengths? |
||||||||||||||||||||||||||
iOS | Android | Chromium | UC | Black |
Nokia Xpress | UC Mini | Opera | Nin |
Dol |
IE | Firefox | |||||||||||||||
7 | 8 | 2 | 4 | Sa | Puf | Cy | Xia | Op | Go | 9 | 10 | 6 | 7 | 10 | Mini | Classic | 9 | 10 | 11 | And | OS |
Mobile browser test array 2.0.3; November 2014
Version 2.x has quite a few changes from 1.3; see my notes.
Wolfgang AT-AS45FW note: Wolfgang is a Dutch importer and re-brander of phones. In this particular case they seem to have bought Chinese (? probably) phones, re-branded them, then re-sold them to the Whoop company, which re-branded them and sold them to the Hema chain of supermarkets, which sells them to consumers as the Whoop Echo. Supply chain management FTW!