Got a nice fluid layout on your web site? Annoyed at how mobile browsers like to assume pages need nine hundred virtual horizontal pixels to display properly? Add this to your , as I've just done across my site:
This tells iPhone and Android browsers, at least, to present the page with a virtual window width equal to the device's actual screen width. It was
invented and specified by Apple.
(I am not taking up the question of whether these browsers are making the right default choice. I will say, however, that in my technical opinion this is the wrong choice of location for this parameter: whether a layout will work at narrow widths depends largely on the stylesheet, not on the HTML; this parameter therefore ought to be stored in the stylesheet (that is, be a CSS extension); insofar as it does depend on the HTML, you can then put it in a element.)
If you're looking to use media types to provide different styles: These browsers also don't respect the “handheld” media type; but they do support
draft CSS3 Media Queries, which allow you to condition on the actual screen width - if you want, even in ems! I've used this on the main
switchb.org page to make the Big Text less likely to spill off the screen (could use some further testing; all I've used so far is my desktop and a Nexus One), and also in the
Caja Corkboard demo (which I wrote this summer (among other things) and ought to blog about).