A completely fluid layout won’t happen very often.
In fact a completely static or flexible design won’t happen very often either. (Yeah, I know, static shouldn’t !
)
What happens in real life is a responsive design (media queries help transition to and from bigger “resolutions”, widths really) with a hybrid layout: fixed or relative values with any combinations of the fixed (px), fluid/liquid (%) and elastic (em) elements and with min and max constraints.
One such design should take care of widths from 320px up to 1900px. We could discuss bigger or smaller widths, but it’s not realistic.
Another thing to consider separately are the higher pixel density devices, like you can see in foodsense.is:
/* RETINA OVERRIDES
----------------------------------------------- */
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {
All in all, we’re not talking about 2, 3 or 5 “resolutions”, we’re talking how each individual design would go from mobile first: start from a base layout, and then take care of widths from 320px, and then properly handle the extra widths up the screen sizes. Which is the approach I employ.
You could take a look at this responsive boilerplate that has taught me lots: http://stuffandnonsense.co.uk/projects/320andup/.
It’s based on H5RP and MH5BP, some more stuff to learn from: http://html5boilerplate.com/
Others would do things differently. They’d start from a 960px or 1140px flexible design and then adjust up and down the (flagrantly different) screen sizes.
But no matter the starting point, responsive design is the key. Flexible design (fluid layouts, …) alone won’t be able to properly handle big differences in screen sizes.