How to use the picture element for responsive images in HTML5
Using HTML5's
as a backup to ensure compatibility and performance optimization. When art guidance or modern format support is required,
's srcset attribute can be used only when resolution switching is required.

The <picture></picture> element in HTML5 is a powerful tool for delivering responsive images, allowing you to serve different image files based on screen size, resolution, device orientation, or other conditions. It works similarly to the <video></video> and <audio></audio> elements by wrapping multiple <source></source> tags and a fallback <img src="/static/imghw/default1.png" data-src="large.jpg" class="lazy" alt="How to use the picture element for responsive images in HTML5" > .
Here's how to use it effectively:
Understanding the structure of the <picture></picture> element
The <picture></picture> element acts as a container for different image sources. You define multiple sources using the <source></source> tag, and include one <img src="/static/imghw/default1.png" data-src="large.jpg" class="lazy" alt="How to use the picture element for responsive images in HTML5" > element as a fallback. The browser selects the first source that matches the given criteria, falling back to the image if none apply.
<picture> <source media="(max-width: 768px)" srcset="small.jpg"> <source media="(max-width: 1200px)" srcset="medium.jpg"> <img src="/static/imghw/default1.png" data-src="large.jpg" class="lazy" alt="Description of image"> </picture>
In this example:
- Devices with screen widths up to 768px get
small.jpg - Devices between 769px and 1200px get
medium.jpg - Larger screens get
large.jpgvia the<img src="/static/imghw/default1.png" data-src="hero-desktop.jpg" class="lazy" alt="How to use the picture element for responsive images in HTML5" >fallback
Using media queries to target device characteristics
The media attribute in <source> accepts CSS media queries, making it ideal for art direction—when you want to show different crops or compositions on different devices.
<picture> <source media="(max-width: 599px)" srcset="hero-mobile.jpg"> <source media="(min-width: 600px)" srcset="hero-desktop.jpg"> <img src="/static/imghw/default1.png" data-src="hero-desktop.jpg" class="lazy" alt="Hero banner"> </picture>
This is useful when:
- A mobile image is cropped vertically to fit smaller screens
- Desktop versions include more context or background elements
- You want to optimize loading by sending only what's necessary
Supporting modern image formats with type attribute
You can also use the type attribute to serve next-gen formats like WebP or AVIF while falling back to JPEG or PNG for older browsers.
<picture> <source type="image/webp" srcset="photo.webp"> <source type="image/avif" srcset="photo.avif"> <img src="/static/imghw/default1.png" data-src="photo.jpg" class="lazy" alt="A scenario view"> </picture>
Browsers check the type first. If they support WebP, they'll load it. If not, they'll try AVIF, then fall back to the JPG. This improves performance without sacrificing compatibility.
Tips for effective use
- Always include an
<img src="/static/imghw/default1.png" data-src="large.jpg" class="lazy" alt="How to use the picture element for responsive images in HTML5" >tag with asrcandaltattribute. It's required and ensures accessibility and fallback. - Order
<source>elements logically—most specific or preferred formats first. - Combine
mediaandtypewhen needed:
<picture> <source media="(max-width: 768px)" srcset="small.webp" type="image/webp"> <source media="(max-width: 768px)" srcset="small.jpg" type="image/jpeg"> <source srcset="large.webp" type="image/webp"> <img src="/static/imghw/default1.png" data-src="large.jpg" class="lazy" alt="Responsive image"> </picture>
- Use relative paths or CDNs consistently to avoid broken images.
The <picture></picture> element gives you fine control over image delivery. It's not always needed—simple size-based responsive images can use srcset and sizes on <img alt="How to use the picture element for responsive images in HTML5" > —but when you need art direction or format switching, <picture></picture> is the right choice.
Basically, use <picture></picture> when you need different images for different contexts, and stick with srcset on <img alt="How to use the picture element for responsive images in HTML5" > for resolution switching alone.
The above is the detailed content of How to use the picture element for responsive images in HTML5. For more information, please follow other related articles on the PHP Chinese website!
Hot AI Tools
Undress AI Tool
Undress images for free
AI Clothes Remover
Online AI tool for removing clothes from photos.
Undresser.AI Undress
AI-powered app for creating realistic nude photos
ArtGPT
AI image generator for creative art from text prompts.
Stock Market GPT
AI powered investment research for smarter decisions
Hot Article
Popular tool
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
Hot Topics
20516
7
13630
4
How to quickly create a virtual human explanation video with Synthesia_Synthesia virtual human video production guide [Quick]
Dec 18, 2025 pm 06:54 PM
Synthesia can quickly generate high-quality virtual human explanation videos: 1. Select a virtual human and customize the voice intonation; 2. Paste the script to enable automatic lip synchronization; 3. Add dynamic backgrounds and graphic and text layers; 4. Generate multi-language versions in batches with one click; 5. Export MP4 or embed HTML5 code for publication.
What to do if the IE browser web page loads slowly? IE browser performance optimization
Jan 15, 2026 pm 02:21 PM
Optimization methods for slow loading of IE web pages include: 1. Disable non-essential add-ons; 2. Reset IE settings; 3. Adjust connection and advanced parameters; 4. Clean system temporary files and DNS cache; 5. Turn off hardware acceleration and set to standard document mode.
Quark Browser video cannot be played. Steps to troubleshoot Quark Browser playback problems.
Jan 22, 2026 am 09:30 AM
Solutions to abnormal video playback in Quark browser include: 1. Check network connection and access permissions; 2. Clear cache and website data; 3. Enable JavaScript and H5 playback support; 4. Switch to desktop version of UA; 5. Turn off hardware acceleration and reset media services.
3699 mini-games online play entrance, latest decompression mini-games updated daily
Jan 13, 2026 pm 02:12 PM
The entrance address for online play of 3699 mini games is https://www.3699.com. The platform is based on HTML5 technology and runs without plug-ins. It supports multi-terminal adaptation, CDN acceleration, preloading optimization, and decompressed games are updated daily, classified according to emotional dimensions, and taking into account both interaction friendliness and privacy and security protection.
What to do if Microsoft Edge video clarity is blurred Microsoft Edge image quality adjustment
Jan 04, 2026 am 10:24 AM
Edge video blur can be enabled by enabling VSR, using the enhancement button, configuring NVIDIARTX overclocking, turning off hardware acceleration or checking DRM restrictions. The corresponding solution needs to be selected based on the graphics card model, browser version and video encryption.
What should you pay attention to when collecting Shenma search on the mobile terminal? Tips for adapting to the mobile terminal [Instructions]
Jan 04, 2026 am 11:00 AM
In order to improve the inclusion effect of Shenma Search mobile terminal, it is necessary to adopt independent adaptation (self-jumping), add mobile-agentMeta statement, submit corresponding Sitemap for PC and mobile pages, ensure that the basic quality of mobile pages meets the standards, and verify the effective status of adaptation.
Browser browser high-definition rendering version address browser browser organ network high-definition rendering version clearly presented
Dec 20, 2025 am 09:30 AM
The address of browser browser HD rendering version is https://www.browser-hd-render.com, which features 4K sharp rendering, HDR video playback, Brotli compression optimization, end-to-end encrypted synchronization and accessibility auxiliary functions.
How to set full-screen mode in uc browser_Steps to set full-screen mode in uc browser [Compilation]
Jan 14, 2026 pm 09:27 PM
There are five ways to solve the problem that UC Browser cannot go full screen: 1. Turn on the full screen switch through the toolbox; 2. Add UC smart components in the settings; 3. Switch UA to the computer version and refresh the page; 4. Use the F11 key or double-click the video and other system-level operations; 5. Clear the web page and GPU cache and then restart.





