Contact emailstcap...@chromium.org

ExplainerNone

Specificationhttps://html.spec.whatwg.org/#lazy-load-root-margin

Summary

Changes the lazy load intersection observer's init dictionary to use a
scrollMargin instead of a rootMargin. This allows lazy loading images
contained inside CSS scrollers, like carousels, to load as expected when
near the viewport instead of the current behavior where these images load
when at least one pixel is intersecting the viewport.


Blink componentBlink>Image
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EImage>

Search tagslazyload <https://chromestatus.com/features#tags:lazyload>,
scrollmargin <https://chromestatus.com/features#tags:scrollmargin>

TAG reviewNone

TAG review statusNot applicable

Risks


Interoperability and Compatibility

Overall low as scroll margin also applies to the root element thus not
affecting lazy loading images that are currently loading with just a root
margin.


*Gecko*: Positive (https://github.com/w3c/IntersectionObserver/issues/431)
https://bugzilla.mozilla.org/show_bug.cgi?id=1864794

*WebKit*: Positive (
https://github.com/w3c/IntersectionObserver/issues/431#issuecomment-930602435
) https://bugs.webkit.org/show_bug.cgi?id=264864

*Web developers*: Positive (
https://bugs.chromium.org/p/chromium/issues/detail?id=1391989)

*Other signals*:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?

None


Debuggability

None


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, Chrome OS, Android, and Android WebView)?Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes

https://wpt.fyi/results/html/semantics/embedded-content/the-img-element?label=master&label=experimental&aligned&q=image-loading-lazy-in-


Flag name on chrome://flagsLazyLoadScrollMargin

Finch feature nameNone

Non-finch justification

This feature is behind an enabled-by-default flag that can be disabled if
needed.


Requires code in //chrome?False

Tracking bughttps://bugs.chromium.org/p/chromium/issues/detail?id=1391989

Estimated milestones
Shipping on desktop 121
DevTrial on desktop 121
Shipping on Android 121
DevTrial on Android 121
Shipping on WebView 121

Anticipated spec changes

Open questions about a feature may be a source of future web compat or
interop issues. Please list open issues (e.g. links to known github issues
in the project for the feature specification) whose resolution may
introduce web compat/interop risk (e.g., changing to naming or structure of
the API in a non-backward-compatible way).
None

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5106926245642240

Links to previous Intent discussionsIntent to prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFxahvtrmHkoOpTuD2eZYVOyFuAhP8ZFVoTuNBS8zYTVY%3DTaaQ%40mail.gmail.com

This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFxahvsUb0GEG9WNWRN7Akkowjm03gLj%2Biiq5rG8%2BzdAWMBTNA%40mail.gmail.com.

Reply via email to