This demo is from Daniel Glazman who works actively on web standards and is a long-time mozilla contributor.
CSS Media Queries were originally a proposal submitted to the CSS Working Group by Opera Software and are now implemented in Firefox 3.5. In short, Media Queries extend the media declaration attached to a stylesheet to allow matching based on the rendering device’s intrinsic properties.
Let’s take a link element declaring a stylesheet inside an HTML document:
<link rel="stylesheet" type="text/css" href="style.css" media="screen">
Now imagine you want this stylesheet to apply to the document if and only if the width of the content window is less than 300 pixels… CSS Media Queries make it simple to declare:
<link rel="stylesheet" type="text/css" href="style.css" media="screen and (max-width: 300px)">
Available properties include viewport’s width and height, device’s width and height, orientation (portrait or landscape), viewport’s aspect ratio, device’s aspect ratio, colormap, resolution and type of device.
It’s then very easy to have one single web page ready for consumption on a wide variety of devices, ranging from mobile devices to monochrome tty displays.
When viewing the demo, please don’t forget to resize the window from large to very very small (less than 100px!) to see it in action.
Loading via planet, RSS or a reader without JavaScript? Click here instead.



That was awesome!!111 way to go!!s
That’s awesome! Very graceful transitions… seems like it mainly reacts to changes in the vertical space available in the viewport and not really to changes in horizontal space – was that just for this example?
Wow, that’s a nice feature! The 2nd smallest version does have a lot more height than it needs though, lots of white space at the bottom. I’m not sure if that’s just my browser though, I have quite a few add-ons
*tries in safe mode* Nope, sill there
Regardless, this feature will certainly be popular for smaller screens.
I think there’s a bug in this demo.
If my window has the exact with of 300 pixels then both stylesheets will be loaded. I think you should write max-width:300 and min-width:301 because min/max-width means “smaller/greater or equal than”.
Vive notre Glazou national & vive Firefox !
@media queries are great stuff, and it’s also supported by the iPhone. That’s how I get a dedicated mobile display format on http://limi.net
@Mario: good catch ! I’ll update the demo. Thanks!
Definite dual stylesheets at 300px wide.
Sweeeet!
Great to see it finally implemented into Firefox. I did a similar blog post on the iPhones support of media queries and how you can detect orientation with it. Determine iPhone orientation using CSS
Does IE8 support this?
Doesn’t seem to work in my Firefox 3.5 on Ubuntu
Uh.. my bad *blush*, wrong binary