Special CSS3 Scaling for andriod version less than 2.3

By Sam Deering

Special CSS3 Scaling for Android version less than 2.3. Following on from link Making Adobe edge HTML5 Animations mobile responsive.

//special scaling for andriod version less than 2.3
var ua = navigator.userAgent;
if( ua.indexOf(“Android”) >= 0 )
var androidversion = parseFloat(ua.slice(ua.indexOf(“Android”)+8));
if (androidversion < 2.3) { // alert('andriod < 2.3'); var pixelScaleRatio = 1 / window.devicePixelRatio; //Andriod 2.2 devicePixelRatio = 1.5 scale = scale * pixelScaleRatio; var $meta = $('meta[name=viewport]'), content = $meta.attr('content'); // //target-densitydpi=device-dpi $meta.attr('content',content+', target-densitydpi=320'); $container.find('div').first().scale(scale); } } [/js] Scale uses this plugin:

Meta Tag densitydpi

densitydpi is used for scaling the pixels to their actual size. A pixel is not a pixel in some devices and Android < 2.3 somehow thinks pixels are 1.5 times their actual size... so this is where densitydpi comes into play to correct that. See densitydpi doco for more on this.

Full Meta Tag

Sam Deering
Meet the author
Sam Deering is a Front-end Web Developer who specialises in JavaScript & jQuery. Sam is driven and passionate about sharing his knowledge to educate others.

No Reader comments


Learn Coding Online
Learn Web Development

Start learning web development and design for free with SitePoint Premium!

Get the latest in JavaScript, once a week, for free.