Files
ladybird/Tests/LibWeb/Screenshot/input/css-backgrounds.html
Jelle Raaijmakers 7fed3f9801 LibWeb: Start fetching CSS image resources before document load event
Both Chromium and Gecko delay the document's load event for CSS image
resource requests (background-image, mask-image, etc). We now start
fetching CSS image resources as soon as their stylesheet is associated
with a document, rather than deferring until layout. This is done by
collecting ImageStyleValues during stylesheet parsing and initiating
their fetches when the stylesheet is added to the document.

Fixes #3448
2026-03-21 10:29:54 +01:00

79 lines
3.9 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>CSS Background Tests</title>
<meta name="fuzzy" content="maxDifference=0-21;totalPixels=0-72122">
<style>
.box {
width: 180px;
height: 160px;
border: 1px solid black;
padding: 5px 10px 15px 20px;
overflow: auto;
margin-bottom: 10px;
scrollbar-width: none;
}
.force-scroll {
width: 500px;
height: 500px;
}
</style>
</head>
<body>
<div class="box" style="background: url('../data/smiley.png') fixed;">
<div class="force-scroll"></div>
</div>
<div class="box" style="background-image: url('../data/smiley.png'); background-attachment: fixed;">
<div class="force-scroll"></div>
</div>
<div class="box" style="background: url('../data/smiley.png') local">
<div class="force-scroll"></div>
</div>
<div class="box" style="background-image: url('../data/smiley.png'); background-attachment: local">
<div class="force-scroll"></div>
</div>
<div class="box" style="background: url('../data/smiley.png') scroll">
<div class="force-scroll"></div>
</div>
<div class="box" style="background-image: url('../data/smiley.png'); background-attachment: scroll">
<div class="force-scroll"></div>
</div>
<div class="box" style="background: url('../data/smiley.png') bottom 5% right 10px no-repeat"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-position: bottom 5% right 10px; background-repeat: no-repeat"></div>
<div class="box" style="background: url('../data/smiley.png') yellow padding-box content-box"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-color: yellow; background-origin: padding-box; background-clip: content-box"></div>
<div class="box" style="background: url('../data/smiley.png') center / contain"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-position: center; background-size: contain"></div>
<div class="box" style="background: url('../data/smiley.png') center / cover"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-position: center; background-size: cover"></div>
<div class="box" style="background: url('../data/smiley.png') top / 50% 25px"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-position: top; background-size: 50% 25px"></div>
<div class="box" style="background: url('../data/smiley.png') space"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-repeat: space"></div>
<div class="box" style="background: url('../data/smiley.png') round"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-repeat: round"></div>
<div class="box" style="background: url('../data/smiley.png') space round"></div>
<div class="box" style="background-image: url('../data/smiley.png'); background-repeat: space round"></div>
<div class="box" style="background: url('../data/smiley.png') no-repeat top 5px left 5px, url('../data/smiley.png') no-repeat top 5px right 5px, url('../data/smiley.png') no-repeat bottom 5px left 5px, url('../data/smiley.png') no-repeat bottom 5px right 5px, url('../data/smiley.png') no-repeat center cyan"></div>
<div class="box" style="background-color: cyan;
background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
background-position: top 5px left 5px, top 5px right 5px, bottom 5px left 5px, bottom 5px right 5px, center;
background-image: url('../data/smiley.png'), url('../data/smiley.png'), url('../data/smiley.png'), url('../data/smiley.png'), url('../data/smiley.png');"></div>
</body>
</html>