Handle Next-gen Image Formats in React with the 'picture' Element

Josh Comeau
InstructorJosh Comeau

Share this video with your friends

Send Tweet
Published 2 years ago
Updated 10 months ago

This video builds on concepts explained in a previous video: https://egghead.io/lessons/html-5-optimized-cross-browser-images-with-webp-and-the-picture-element. If you're not already comfortable with the .webp image format and the picture HTML tag, please watch the earlier video first :)

"Next-gen" image formats like .webp are often 2-3x smaller than their .png or .jpg counterparts. Unfortunately, Safari and Internet Explorer have no .webp support. The HTML picture element lets us serve tiny modern images to most browsers, while gracefully falling back to png/jpg for Safari/IE.

In this video, we show how to create a React component that wraps up some of the funkiness of working with the picture element. We'll create an ImgWithFallback component which can be used anywhere you'd use an img tag.