It's a webkit issue reported here for all transform
s
A work around from this SO post is to create another means of the transform and apply it in the case of webkit browsers using media queries (the other means depends on what transforms you intend to apply)
@media screen and (-webkit-min-device-pixel-ratio:0) {
... webkit version here ...
}
You could do the same thing using a javascript function taken from this SO post to detect the browser and apply the transformation replacement if it's Chrome, Safari, or (in your case) Firefox
// Returns [Browser, Version]
navigator.sayswho = (function(){
var N= navigator.appName, ua= navigator.userAgent, tem;
var M= ua.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i);
if(M && (tem= ua.match(/version\/([\.\d]+)/i))!= null) M[2]= tem[1];
M= M? [M[1], M[2]]: [N, navigator.appVersion,'-?'];
return M;
})();
if(navigator.sayswho[0] == "Chrome" || navigator.sayswho[0] == "Safari") {
// Do webkit specific fix
}
if(navigator.sayswho[0] == "Firefox") {
// Do Firefox specific fix here
}
However both of these work arounds involve creating the transform in another way (not using transforms). Most likely you'd have to recreate the same effect using javascript and apply it in these cases, which is far from ideal
I'd recommend working around the issue in another way, most likely by removing position:fixed