← Back to context

Comment by account42

21 hours ago

Do browsers support progressive enhancement from gif to animated avif without javascript? The royally messed that up for animated webp.

Yes, by using the <picture> element with <source> elements declaring the individual formats with the last one being a regular <img> with the gif.

Or you could use content-negotiation to only send avif when it's supported, but IMO the HTML way with <picture> is perhaps clearer for the client and end user.

I think the webp problem was due to browsers supporting webp but not supporting animation, transparency or other features, so content negotiation based on mime types (either via <picture> or HTTP content-negotiation) did not work properly. Safari 16.1-16.3 has the same problem with AVIF, but that is a smaller problem than it was with webp.