Web devs battle new iPad’s Retina display

From SVG to media queries, all solutions point to more work for designers

Web devs battle new iPad’s Retina display
High-res displays are already causing headaches for web designers regarding the sharpness of images

Apple's new iPad has predictably been a massive sales success, with over three million already sold. Although reports initially centred on app developers scrambling to optimise apps for the new Retina display, web designers are increasingly figuring out how to ensure website images don't look 'blurry' – something we recently touched on in our initial new iPad report.

The issue of blurry web pages already existed on the iPhone 4, but that device's smaller display made the problem less apparent. But with the iPad's 9.7-inch screen, companies are clamouring to ensure their designs don't look second-best to native apps. Unfortunately, however, there don't yet appear to be any clear ways to cater for the high-res display without some degree of redundancy.

On Cloud Four Blog, Jason Grigsby detailed how Apple has worked to deliver high-res images to the new iPad. He said the company loads regular images and then switches them out for higher-res equivalents should the device request them. The drawback: "As far as I can tell, there is no attempt to prevent duplicate downloads of images. New iPad users are going to download both a full desktop size image and a Retina version as well."

Such page bloat is something Brad Frost warned about before the new iPad appeared, and he subsequently explored potential workarounds such as using media queries and SVG, along with using more CSS3 techniques to reduce reliance on bitmap images. However, even these solutions have their pitfalls. The Easel Edge reported on working with media queries and noted that you must maintain two sets of images and cannot deal with <img> elements in this manner. And on his blog, Simurai has explored issues relating to the sharpness of icons on the new iPad. Even level-headed ideas such as utilising icon fonts and SVG aren't optimal, because they too often end up with sub-pixel blurring.

In the end, as with other aspects of web design, Simurai suggested a mix-and-match approach, on a case-by-case basis: "There's just no single image format suitable for everything and there probably never will be. […] Maybe best is to use PNG served in many different sizes for your high fidelity, multi-colour logo and other graphics. SVG icons for your navigation that stays the same size, but also looks sharp on Retina displays. Responsive inline SVG for bars and charts and an icon font for all your different button sizes."

As Grigsby noted, it's not like the rules are yet written, and even the iPad's creator hasn't provided anywhere near a perfect solution: "Apple isn't sitting on some secret technique to make retina images work well". And so it's up to web designers and developers to decide how best to support high-res screens (which will surely become commonplace). 

If this is something you’re already working on, let us know your tips in the comments.

7 comments

Comment: 1

It looks like the best methods are pixel-density media queries for background images, and progressive jpegs for foreground images:
http://duncandavidson.com/blog/2012/03/photography_on_retina

Not sure how that impacts download though, does a regular browser stop when is gets enough of the jpg for it's pixel density?

Comment: 2

Progressive JPEG might work well enough for already high res images but doesn't retain any more data the full size image alone.

To expand...

That link looks like a workaround for a limit as to the size of image which can be loaded by the iPad 3 but it doesn't solve the problem because in the end the same full size image is loaded and even if it stopped at a quarter of the size, because it takes that data from every other pixel on every other line it won't be smooth.

The only thing that's going to make things properly smooth is the use of MipMaps which will increase data storage costs but could provide on request (should a browser support it) something close to a requested resolution. How this is to be implemented without a lot of wrangling to manage backwards compatibility is another matter altogether.

Comment: 3

Since Apple in their infinite wisdom have decided to unleash this upon us, perhaps a little more support towards the dev community on their part wouldn't go amiss.

Comment: 6

Here's a solution I created to help bridge the gap until better answers come around. Foresight.js gives webpages the ability to tell if the user's device is capable of viewing high-resolution images (such as the 3rd generation iPad) before the image is requested from the server. Additionally, it judges if the user's device currently has a fast enough network connection for high-resolution images. Depending on device display and network connectivity, foresight.js will request the appropriate image for the webpage.

https://github.com/adamdbradley/foresight.js

Comment: 7

Nice article about the challenges the webdesign industry faces with Retina displays. I've done some research on double resolution images scaled down 50% to look good on Retina displays. You would expect 3 to 4 times the kb sizes but it appears the Retina images can even be smaller in kb size than standard resolution images with sharper results on both normal AND Retina displays.

Take a look at my blogpost with lots of test images here:
http://design.netvlies.nl/ontwerp/retina-revolution/

Daan
June issue on sale now!

The Week in Web Design

Sign up to our 'Week in Web Design' newsletter!

Hosting Directory
.net digital edition
Treat yourself to our geeky merchandise!
site stat collection