Picture: Eran Sandler - http://www.flickr.com/photos/51385424@N00/2253657555
<meta name="viewport" content="width=device-width" />
<meta name="viewport" content="initial-scale=1.0" />
@media screen and (min-width: 800px) { ... }
@media screen and (device-aspect-ratio: 16/9) { ... }
@media screen and (resolution: 2dppx) { ... }
@media screen and (orientation: portrait) { ... }
If users can’t read the words in your app, it doesn’t matter how beautiful the typography is
<form method="post"> <label for="fname">First name:</label> <input type="text" name="fname" id="fname"> <label for="lname">Last name:</label> <input type="text" name="lname" id="lname"> <label for="email">E-mail:</label> <input type="text" name="email" id="email"> </form>
Why do we need this on a mobile optimized page?
http://stats.wikimedia.org/EN/TablesPageViewsMonthlyMobile.htm
<meta name="viewport"
content="width=device-width">
I love typing on a phone.
<input type="email"> <input type="search"> <input type="url"> <input type="tel"> <input type="number"> <input type="date"> <input type="week"> <input type="month"> <input type="datetime-local">
<form method="post"> First name:<input type="text" name="fname"> Last name: <input type="text" name="lname"> E-mail: <input type="text" name="email"> Phone: <input type="text" name="phone"> Address: <input type="text" name="address"> </form>
if(!!form.requestAutocomplete) {
// enhance form
}
button.addEventListener('click', function(){
form.requestAutocomplete();
});
// see details on event handling below
form.addEventListener('autocomplete', function(){
// successful rAc
// Call your client-side form validation logic here
form.submit(); // trigger submit
});
form.addEventListener('autocompleteerror', function(){
// event.reason is one of "cancel", "invalid" or "disabled".
});
More Info: goo.gl/SEUt0n

Twitter: @paul_kinlan
Blog: paul.kinlan.me
Twitter: @paul_kinlan
Blog: paul.kinlan.me