Files
ladybird/Tests/LibWeb/Layout/input/grid/grid-placement-using-named-grid-lines.html
Aliaksandr Kalenik f1253c7139 LibWeb: Fix grid placement when using unresolved named grid lines
This patch fixes an issue where grid items using `grid-area: <name>`
with no matching named grid area or lines would be incorrectly placed
at position 0.

According to https://www.w3.org/TR/css-grid-1/#line-placement:
1. When a `<custom-ident>` doesn't match any named line, placement
   should fall back to the first implicit grid line
2. When the same `<custom-ident>` is given for both `grid-*-start` and
   `grid-*-end` (which happens with `grid-area: name`), and both fall
   back to the same implicit line, the resulting span is 1

Previously, the fallback values were hardcoded to 0 and 1, which placed
items in track 0. The fix changes the fallback to use
`m_explicit_line_count` (the first implicit line index) for both start
and end identifiers. When both reference the same line (start == end),
the existing "both positioned" logic now handles this by setting span=1
and adjusting end accordingly.
2026-01-03 16:41:31 +01:00

14 lines
255 B
HTML

<!DOCTYPE html><style>
.grid {
display: grid;
width: 100px;
height: 100px;
grid-auto-columns: 0px 100%;
grid-auto-rows: 0px 100%;
background: red;
}
.item {
grid-area: area;
background: green;
}
</style><div class="grid"><div class="item">