Teyro
CoursesFor creatorsBlog
Log inGet started
Tey Mascot
LOADING.

Every expert you admire was once a beginner who refused to quit.

Teyro

The fun way to finish learning coding and AI: short daily lessons with streaks, leagues and friends.

Get the app

Learn

  • All courses
  • Learn coding
  • Learn AI
  • Learn online
  • How it works
  • Leagues
  • Get the app

Creators

  • Teach on Teyro
  • How teaching works
  • Teach coding online
  • Teach AI online
  • Join as a Founding Creator
  • Creator log in

Resources

  • Blog
  • Features
  • Use cases
  • Compare
  • FAQ

Legal

  • Terms of Use
  • Privacy Policy

© 2026 Teyro · support@teyro.app

HomeBlogSkill Building & Careers
Skill Building & Careers

Responsive Images in HTML: srcset, sizes and the picture Element

Serve the right image to every screen. Learn max-width, srcset, sizes and the picture element, plus tips for performance and layout shift.

The Teyro TeamOct 26, 20261 min read
On this page8 sections
  1. Direct answer
  2. Basic CSS
  3. srcset
  4. picture element
  5. Tips
  6. Where Teyro fits
  7. The bottom line
  8. More guides

The same big photo on a small phone wastes data and slows the page.

Direct answer

Make images flexible with max-width: 100%; height: auto;, offer several sizes with srcset and sizes, and use <picture> when you need different formats or art direction. Set width and height to prevent layout shift.

Basic CSS

img {
  max-width: 100%;
  height: auto;
}

srcset

<img
  src="photo-800.jpg"
  srcset="photo-400.jpg 400w, photo-800.jpg 800w, photo-1600.jpg 1600w"
  sizes="(min-width: 900px) 50vw, 100vw"
  width="800" height="533"
  alt="A group of friends hiking at sunrise"
  loading="lazy">

picture element

<picture>
  <source type="image/avif" srcset="photo.avif">
  <source type="image/webp" srcset="photo.webp">
  <img src="photo.jpg" alt="Sunrise over hills" width="800" height="533">
</picture>

Tips

  • Compress images.
  • Use modern formats like WebP or AVIF with a fallback.
  • Lazy-load images below the fold.

Where Teyro fits

Teyro's Responsive Web Design with CSS course turns this into short lessons you can play in a few minutes a day. It has 100 lessons, and you can start free.

The bottom line

Right size, right format, reserved space.

More guides

  • Flexbox vs Grid
  • CSS Container Queries
  • CSS clamp()
  • Srcset and sizes
  • Responsive Web Design with CSS course

Frequently asked questions

How do I make an image responsive?

Set max-width to 100 percent and height to auto in CSS, and provide multiple sizes with srcset.

What is the picture element for?

It lets the browser choose between different image sources, such as different formats or crops for different screens.

How do I avoid layout shift?

Set width and height attributes or use aspect-ratio so space is reserved before the image loads.

Learn it by playing

Responsive Web Design with CSS turns this into short, playable lessons. Free to start.

See the Responsive Web Design with CSS course

Free to start · No credit card needed

Share

Written by

The Teyro Team

Learning Team at Teyro

We build Teyro — an AI-powered learning platform that turns skill-building into a daily habit through bite-sized, gamified lessons. We write about the learning science and study strategies that shape our product.

More from The Teyro Team

On this page

  • Direct answer
  • Basic CSS
  • srcset
  • picture element
  • Tips
  • Where Teyro fits
  • The bottom line
  • More guides

Keep reading

Skill Building & Careers

Best Careers for 2027: High-Demand Jobs and the Skills to Get Them

The best careers for 2027 and the jobs most in demand, based on BLS and World Economic Forum data, plus the skills each path needs.

Oct 30, 20263 min read
Skill Building & Careers

Best Certifications for 2027: Tech, Data, Cloud and Business

The best certifications for 2027 in cloud, security, data, project management and AI, who each one suits, and when a portfolio matters more.

Oct 30, 20263 min read
Skill Building & Careers

Best Programming Language to Learn in 2027 (for Your Goal)

The best programming language to learn in 2027 depends on what you want to build. Compare Python, JavaScript, TypeScript, SQL and C.

Oct 30, 20263 min read