O pequeno trecho a seguir adiciona classes CSS ao elemento HTML raiz, dependendo do dispositivo móvel, para que você possa usar um estilo condicional. Atualmente, acrescenta um ou mais dos seguintes: ios
, android
, mobile
, webview
. O significado dos nomes deve ser autoexplicativo
(function(d, l) {
for (var k in l) {
if(navigator.userAgent.match(new RegExp(l[k], 'i'))){
d[k] = true;
d.documentElement.className+=' '+k;
}
}
}(document, {
ios: '(iPhone|iPod|iPad)',
android: 'android',
mobile: 'mobile',
webview: '(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)'
}));
Então, por exemplo:
/* ios only styling */
.ios body {
background-color: #fff;
}
/* android only styling */
.android body {
background-color: #e7e7e7;
}
também adiciona booleanos com os nomes correspondentes ao document
global para que você possa usar javascript condicional. Ex:
if (document.ios) {
// Do ios specific stuff
}
else if (document.android) {
// Do Android specific stuff
}