Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<link rel=author href="mailto:jarhar@chromium.org">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
.hidden {
content-visibility: hidden;
}
</style>
<div class="hidden" id="container1"></div>
<div class="hidden" id="container2"></div>
<div class="hidden" id="container3"></div>
<div class="hidden" id="container4"></div>
<script>
promise_test(async () => {
const img1 = document.createElement('img');
container1.appendChild(img1);
const img1Load = new Promise(resolve => img1.onload = resolve);
img1.src = 'resources/dice.png';
await img1Load;
assert_not_equals(img1.height, 0, 'height');
const img2 = document.createElement('img');
container2.appendChild(img2);
const img2Load = new Promise(resolve => img2.onload = resolve);
img2.src = 'resources/dice.png';
await img2Load;
assert_not_equals(img2.width, 0, 'width');
const img3 = document.createElement('img');
container3.appendChild(img3);
const img3Load = new Promise(resolve => img3.onload = resolve);
img3.src = 'resources/dice.png';
await img3Load;
assert_not_equals(img3.x, 0, 'x');
const img4 = document.createElement('img');
container4.appendChild(img4);
const img4Load = new Promise(resolve => img4.onload = resolve);
img4.src = 'resources/dice.png';
await img4Load;
assert_not_equals(img4.y, 0, 'y');
}, `c-v:hidden <img> layout APIs shouldn't return zero when accessed from script.`);
</script>