pages of content on CSS-Tricks and a writing staff of one.

//AN_Xml:

//AN_Xml:
Yeahhhh... I'm not going to go back and update every <img> on the site, so I need a technique that will allow me to leave those alone.
//AN_Xml:
//AN_Xml:

The only technique I know of that works with absolutely no markup changes is Adaptive Images. It works by routing requests for images through a PHP file which intelligently serves (and creates if need be) images of the appropriate size for the screen width.

//AN_Xml:

Another question to ask yourself is if you care about legacy content. Perhaps the vast majority of traffic to your site is for newer content in which you can make markup changes and thus take advantage of other techniques. If that's the case, read on to discover those other techniques.

//AN_Xml:

If you have a small project, a brand new project, or a project with legacy content that you are able go back and update, you are also able to choose a technique which does require special markup, so also read on.

//AN_Xml:

Do I care about special markup?

//AN_Xml:

This is really a sub-question of the above. Many of the techniques require you to use special HTML. For example, HiSRC has you put higher resolution images as data-attributes:

//AN_Xml:
<img src="200x100.png" data-1x="400x200.png" data-2x="800x400.png">
//AN_Xml:

I'd say this is a clean, valid, semantic technique, but it also means that you need these attributes on every <img> on your site, which may not be possible on sites with loads of legacy content.

//AN_Xml:

If you know that special markup (or specialized CSS) is not an option for you, really the only option is Adaptive Images. Even Sencha.IO requires prefixing the src attribute which may not be possible with legacy content.

//AN_Xml:

Do I care about semantics?

//AN_Xml:

Some responsive images techniques involve markup which isn't strictly semantic. Ultimately, there is only one way an image can be semantic. That is if the src of it points to a real image and it has alt text describing that image. Brad Frost sums it up nicely:

//AN_Xml:

@stowball Unfortunately its not that simple. A picture of a horse needs to be a picture of a horse or else its not a picture of a horse. :)

//AN_Xml:

— Brad Frost (@brad_frost) April 5, 2012

//AN_Xml: