Bird
Raised Fist0
HTMLmarkup~8 mins

Media formats overview in HTML - Performance & Optimization

Choose your learning style10 modes available
Performance: Media formats overview
HIGH IMPACT
This affects page load speed and rendering performance by determining how quickly media files download and display.
Displaying images on a webpage
HTML
<img src="photo.webp" alt="Photo">
WebP format is smaller and loads faster while maintaining quality.
📈 Performance Gainreduces image size by 30-50%, improves LCP by 200ms
Displaying images on a webpage
HTML
<img src="photo.jpg" alt="Photo">
Using large JPEG or PNG images without optimization causes slow loading and high data usage.
📉 Performance Costblocks rendering for 500ms+ on slow connections, increases LCP
Performance Comparison
PatternDOM OperationsReflowsPaint CostVerdict
Large JPEG/PNG imagesMinimal1 reflow per image loadHigh paint cost due to large decode[X] Bad
WebP imagesMinimal1 reflow per image loadLower paint cost due to smaller size[OK] Good
AVI videoMinimal1 reflow on video loadHigh paint and decode cost[X] Bad
MP4 videoMinimal1 reflow on video loadLower paint and decode cost[OK] Good
WAV audioMinimal1 reflow on audio loadHigh resource load cost[X] Bad
OGG audioMinimal1 reflow on audio loadLower resource load cost[OK] Good
Rendering Pipeline
Media formats affect the loading and decoding stages of the browser rendering pipeline. Efficient formats reduce download time and decoding effort.
→Resource Loading
→Decode
→Paint
⚠️ BottleneckResource Loading and Decode stages are most expensive for large or inefficient media formats.
Core Web Vital Affected
LCP
This affects page load speed and rendering performance by determining how quickly media files download and display.
Optimization Tips
1Use modern compressed media formats to reduce file size and improve load speed.
2Avoid outdated or uncompressed formats that increase load time and block rendering.
3Check media file sizes in DevTools Network panel to identify performance bottlenecks.
Performance Quiz - 3 Questions
Test your performance knowledge
Which image format generally offers better compression and faster loading for web use?
ATIFF
BWebP
CBMP
DGIF
DevTools: Network
How to check: Open DevTools, go to Network tab, reload page, filter by media type, and check file sizes and load times.
What to look for: Look for large media files that take long to download; smaller sizes and faster load times indicate better performance.

Practice

(1/5)
1. Which HTML tag is used to add a sound file to a web page?
easy
A. <audio>
B. <img>
C. <video>
D. <sound>

Solution

  1. Step 1: Identify the tag for sound

    The <audio> tag is designed to embed sound files like music or voice recordings.
  2. Step 2: Compare with other tags

    <img> is for images, <video> is for videos, and <sound> is not a valid HTML tag.
  3. Final Answer:

    <audio> -> Option A
  4. Quick Check:

    Sound tag = <audio> [OK]
Hint: Sound files use <audio>, images use <img> [OK]
Common Mistakes:
  • Confusing <audio> with <video>
  • Using <sound> which is not valid
  • Choosing <img> for sound
2. Which of the following is the correct syntax to embed an image in HTML?
easy
A. <img src='image.jpg' alt='Description'>
B. <image src='image.jpg' alt='Description'>
C. <img href='image.jpg' alt='Description'>
D. <img src='image.jpg'>Description</img>

Solution

  1. Step 1: Check the tag and attributes for image

    The correct tag is <img> with a src attribute for the file path and an alt attribute for accessibility.
  2. Step 2: Validate the syntax

    <img> is self-closing and does not have a closing tag. The href attribute is incorrect for images.
  3. Final Answer:

    <img src='image.jpg' alt='Description'> -> Option A
  4. Quick Check:

    Image tag uses src and alt attributes [OK]
Hint: Use for images [OK]
Common Mistakes:
  • Using <image> instead of <img>
  • Using href instead of src
  • Adding closing tag to <img>
3. What will the following HTML code display in a browser?
<video controls>
  <source src='movie.mp4' type='video/mp4'>
  <source src='movie.webm' type='video/webm'>
  Your browser does not support the video tag.
</video>
medium
A. An error message because multiple sources are not allowed
B. A video player with controls that plays movie.mp4 or movie.webm
C. Only the text 'Your browser does not support the video tag.'
D. A static image of the video without controls

Solution

  1. Step 1: Understand the <video> tag with multiple sources

    The <video> tag can have multiple <source> elements to provide different video formats for browser compatibility.
  2. Step 2: Analyze the controls attribute and fallback text

    The controls attribute shows play/pause buttons. The fallback text appears only if the browser cannot play any source.
  3. Final Answer:

    A video player with controls that plays movie.mp4 or movie.webm -> Option B
  4. Quick Check:

    Video tag with sources and controls shows player [OK]
Hint: Multiple sources provide fallback formats for video [OK]
Common Mistakes:
  • Thinking multiple sources cause error
  • Ignoring controls attribute
  • Assuming fallback text always shows
4. Identify the error in this HTML snippet for embedding audio:
<audio src='sound.mp3' controls>
  <source src='sound.ogg' type='audio/ogg'>
</audio>
medium
A. The type attribute is invalid for audio sources
B. The controls attribute is missing
C. The <source> tag must be self-closing with />
D. The src attribute should not be used on <audio> when <source> is present

Solution

  1. Step 1: Understand the use of src and source in <audio>

    When using <source> tags inside <audio>, the src attribute on <audio> should be omitted to avoid conflicts.
  2. Step 2: Check other attributes and syntax

    The controls attribute is present, <source> tags do not require self-closing slash in HTML5, and type is valid.
  3. Final Answer:

    Using src on <audio> with <source> tags is incorrect -> Option D
  4. Quick Check:

    Use either src or source tags, not both [OK]
Hint: Use <source> tags inside <audio>, avoid src on <audio> [OK]
Common Mistakes:
  • Using src on <audio> with <source> tags
  • Thinking <source> must be self-closing
  • Believing type attribute is invalid
5. You want to add a video that plays automatically, loops forever, and is muted by default for accessibility. Which HTML snippet correctly achieves this?
hard
A. <video src='clip.mp4' autoplay muted></video>
B. <video src='clip.mp4' autoplay loop></video>
C. <video src='clip.mp4' autoplay loop muted controls></video>
D. <video src='clip.mp4' loop muted controls></video>

Solution

  1. Step 1: Identify required attributes for video behavior

    To play automatically, use autoplay. To loop forever, use loop. To mute sound by default, use muted. Controls help user control playback.
  2. Step 2: Check each option for all attributes

    <video src='clip.mp4' autoplay loop muted controls></video> has all: autoplay, loop, muted, and controls. Others miss one or more attributes.
  3. Final Answer:

    <video src='clip.mp4' autoplay loop muted controls></video> -> Option C
  4. Quick Check:

    All needed attributes present in <video src='clip.mp4' autoplay loop muted controls></video> [OK]
Hint: Use autoplay, loop, muted together for auto-looping muted video [OK]
Common Mistakes:
  • Omitting muted causes sound to play unexpectedly
  • Forgetting loop to repeat video
  • Missing controls reduces user control
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard