안드로이드는 caniuse.com에 따라 버전 3.0 이후로 완전히 css 3d 변형을 지원해야합니다. 아래 테스트 중 하나 (예 : Android 4.1, Samsng Galaxy)를 실행하면 true를 반환합니다. 그러나 3D 변환과 보존 -3D를 사용하는 페이지를 볼 때 작동하지 않습니다."preserve-3d"테스트가 Android에서 (Browserstack을 통해) 작동하지 않습니까?
http://jsfiddle.net/bartaz/e3Rjz/show/
테스트 1 :
(function(Modernizr, win){
Modernizr.addTest('csstransformspreserve3d', function() {
var prop = Modernizr.prefixed('transformStyle');
var val = 'preserve-3d';
var computedStyle;
if(!prop) return false;
prop = prop.replace(/([A-Z])/g, function(str,m1){ return '-' + m1.toLowerCase(); }).replace(/^ms-/,'-ms-');
Modernizr.testStyles('#modernizr{' + prop + ':' + val + ';}', function (el, rule) {
computedStyle = win.getComputedStyle ? getComputedStyle(el, null).getPropertyValue(prop) : '';
});
return (computedStyle === val);
});
}(Modernizr, window));
테스트 2 : 예를 들어
Modernizr.addTest('csstransformspreserve3d', function() {
var prop,
val,
cssText,
ret;
prop = 'transform-style';
if ('webkitTransformStyle' in document.documentElement.style) {
prop = '-webkit-' + prop;
}
val = 'preserve-3d';
cssText = '#modernizr { ' + prop + ': ' + val + '; }';
Modernizr.testStyles(cssText, function (el, rule) {
ret = window.getComputedStyle ? getComputedStyle(el, null).getPropertyValue(prop) : '';
});
return (ret === val);
});
는 지금은 문제가 무엇인지 모른다. 테스트가 작동하지 않습니까? 안드로이드 4.1은 "preserve-3d"를 지원하지 않습니까? 아니면 뭔가 다른 것이 있습니까?
Android, inbuilt, chrome mini .. 또는 다른 어떤 브라우저에서 사용하고 있는지 지정하십시오. – MarmiK
inbuilt 것입니다. browserstack에는 선택의 여지가 없기 때문에. 이것은 아마도 에뮬레이터 관련 문제 일 것입니다. – gang