Skip to content

Commit

Permalink
Prototype auto sizes for lazy-loaded img
Browse files Browse the repository at this point in the history
Spec PR:
whatwg/html#8008

WPT tests PR:
#34427

R=pdr

Bug: 1359051
Change-Id: I8e9bc836e9582a9209db53d55e0edc96f90499f2
  • Loading branch information
tcaptan-cr authored and chromium-wpt-export-bot committed May 12, 2023
1 parent 2b825bf commit f70f511
Show file tree
Hide file tree
Showing 3 changed files with 83 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<!doctype html>
<title>Auto sizes rendering</title>
<link rel="help" href="specLinkTBDhttps://drafts.csswg.org/css-images-4/#image-set-notation">
<meta name="assert" content="auto sizes rendering">
<img
src="/images/green.png"
width="100px"
>
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
<!doctype html>
<html class="reftest-wait">
<title>Auto sizes rendering</title>
<link rel="help" href="specLinkTBDhttps://drafts.csswg.org/css-images-4/#image-set-notation">
<link rel="match" href="reference/sizes-auto-rendering-ref.html">
<meta name="assert" content="auto sizes rendering">
<img
id="testImg"
loading="lazy"
srcset="
/images/green.png 100w,
/images/red.png 50w
"
sizes="auto"
width="50px"
>
<script>
function runTest() {
testImg.addEventListener(
'load',
() => {
requestAnimationFrame(() => {
testImg.style.width = '100px';
requestAnimationFrame(() => {
testImg.addEventListener('load', () => {
requestAnimationFrame(() => {
requestAnimationFrame(() => {
document.documentElement.classList.remove("reftest-wait");
});
});
});
});
});
},
{
once: true,
}
);
}

window.addEventListener('DOMContentLoaded', runTest);
</script>
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<!doctype html>
<html class="reftest-wait">
<title>Auto sizes rendering</title>
<link rel="help" href="specLinkTBDhttps://drafts.csswg.org/css-images-4/#image-set-notation">
<link rel="match" href="reference/sizes-auto-rendering-ref.html">
<meta name="assert" content="auto sizes rendering">
<img
id="testImg"
loading="lazy"
srcset="
/images/green.png 100w,
/images/red.png 200w
"
sizes="auto"
width="100px"
>
<script>
function runTest() {
testImg.addEventListener(
'load',
() => {
requestAnimationFrame(() => {
document.documentElement.classList.remove("reftest-wait");
});
},
{
once: true,
}
);
}

window.addEventListener('DOMContentLoaded', runTest);
</script>

0 comments on commit f70f511

Please sign in to comment.