scale fit mobile web content using viewport meta tag scale fit mobile web content using viewport meta tag ios ios

scale fit mobile web content using viewport meta tag


In the head add this

//Include jQuery<meta id="Viewport" name="viewport" content="initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no"><script type="text/javascript">$(function(){if( /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ) {  var ww = ( $(window).width() < window.screen.width ) ? $(window).width() : window.screen.width; //get proper width  var mw = 480; // min width of site  var ratio =  ww / mw; //calculate ratio  if( ww < mw){ //smaller than minimum size   $('#Viewport').attr('content', 'initial-scale=' + ratio + ', maximum-scale=' + ratio + ', minimum-scale=' + ratio + ', user-scalable=yes, width=' + ww);  }else{ //regular size   $('#Viewport').attr('content', 'initial-scale=1.0, maximum-scale=2, minimum-scale=1.0, user-scalable=yes, width=' + ww);  }}});</script>


I think this should help you.

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">

Tell me if it works.

P/s: here is some media query for standard devices. http://css-tricks.com/snippets/css/media-queries-for-standard-devices/


ok, here is my final solution with 100% native javascript:

<meta id="viewport" name="viewport"><script type="text/javascript">//mobile viewport hack(function(){  function apply_viewport(){    if( /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)   ) {      var ww = window.screen.width;      var mw = 800; // min width of site      var ratio =  ww / mw; //calculate ratio      var viewport_meta_tag = document.getElementById('viewport');      if( ww < mw){ //smaller than minimum size        viewport_meta_tag.setAttribute('content', 'initial-scale=' + ratio + ', maximum-scale=' + ratio + ', minimum-scale=' + ratio + ', user-scalable=no, width=' + mw);      }      else { //regular size        viewport_meta_tag.setAttribute('content', 'initial-scale=1.0, maximum-scale=1, minimum-scale=1.0, user-scalable=yes, width=' + ww);      }    }  }  //ok, i need to update viewport scale if screen dimentions changed  window.addEventListener('resize', function(){    apply_viewport();  });  apply_viewport();}());</script>