overflow-clipping — 100.00% verified visual parity

← all categories · PASS 17 · FAIL 0 · REFERENCE-DISPUTED 3 · 20 total · 300 DPI

diff colours:MissingExtraColorErrMatchFull-page diff: matching and per-channel ≤1.0% pixels are blank; coloured classes are same-coordinate above-floor evidence. Exact RGBA mismatch remains numeric.

overflow — 100.00% verified visual parity PASS 13 · FAIL 0 · REFERENCE-DISPUTED 3all categories ↑

REFERENCE-DISPUTED 2554 px · above-floor 0.44% · raw 0.47% max-page diff overflow-scroll-print-clip · scroll · REFERENCE DISPUTEDMissingmissing 0.6%extra 0.5%ΔE 0.2
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
why: candidate lacks paint present in reference (0.6%)
overflow:scroll establishes a scroll container. In static print media, the exact overflow indicator and placement of printed overflow are UA-defined, so the Chrome PDF is retained only as a compatibility canary.
reference dispute: CSS Overflow 3 section 3.1.3 allows static-media UAs to show an overflow indication and says overflowing scroll content may be printed without defining where; Chrome's exact scrollbar and clipping pixels are not a normative oracle.
regions (266 total; showing 64 representatives)

Complete component census grouped by dominant raster class; representative details are bounded.

Complete dominant-class aggregates

classregionspixelsunion bbox (CSS px)largest pxmaximum magnitude
Missing279843,3 → 154,114744total 0.5% · largest 0.4%
Extra528098,6 → 154,114158total 0.4% · largest 0.08%
ColorErr1877618,6 → 154,116152total 0.4% · largest 0.08% · max ΔE 0.2

Representative region details (worst-first)

classbbox (CSS px)area%magnitudereason
Missing3,3 → 142,1020.4candidate lacks paint present in reference (0.4%)
Extra24,114 → 75,1140.08candidate adds paint absent from reference (0.08%)
AntialiasCoverage25,104 → 73,1050.08ΔRGB(-98,-98,-98)antialiasing coverage residue on a shared outline
Extra26,104 → 73,1040.08candidate adds paint absent from reference (0.08%)
Extra146,92 → 153,980.08candidate adds paint absent from reference (0.08%)
Extra147,6 → 151,110.04candidate adds paint absent from reference (0.04%)
Extra154,24 → 154,490.04candidate adds paint absent from reference (0.04%)
AntialiasCoverage144,25 → 145,470.04ΔRGB(-98,-98,-98)antialiasing coverage residue on a shared outline
Extra144,26 → 144,470.04candidate adds paint absent from reference (0.04%)
ColorValue21,102 → 21,1160.03ΔE 0.2 ΔRGB(-1,-1,-1)fill recolour ΔRGB(-1,-1,-1) (ΔE 0.2)
Extra145,14 → 153,140.03candidate adds paint absent from reference (0.03%)
Missing9,105 → 13,1080.02candidate lacks paint present in reference (0.02%)
ColorValue142,102 → 142,1160.02ΔE 0.2 ΔRGB(-1,-1,-1)fill recolour ΔRGB(-1,-1,-1) (ΔE 0.2)
Missing9,110 → 13,1140.02candidate lacks paint present in reference (0.02%)
Missing131,105 → 134,1080.02candidate lacks paint present in reference (0.02%)
Missing131,111 → 134,1140.02candidate lacks paint present in reference (0.02%)
AntialiasCoverage145,90 → 153,910.02ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
Missing145,90 → 154,900.02candidate lacks paint present in reference (0.02%)
AntialiasCoverage145,13 → 153,140.01ΔRGB(-73,-73,-73)antialiasing coverage residue on a shared outline
AntialiasCoverage12,107 → 13,1120.01ΔRGB(-73,-73,-73)antialiasing coverage residue on a shared outline
AntialiasCoverage131,107 → 132,1120.01ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
AntialiasCoverage148,21 → 150,210.005333ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
Missing153,13 → 154,140.003733candidate lacks paint present in reference (0.003733%)
AntialiasCoverage152,91 → 153,920.003733ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
AntialiasCoverage149,94 → 150,950.003733ΔRGB(-86,-86,-86)antialiasing coverage residue on a shared outline
Missing148,21 → 150,210.003200candidate lacks paint present in reference (0.003200%)
Missing21,108 → 21,1100.003200candidate lacks paint present in reference (0.003200%)
AntialiasCoverage147,11 → 147,120.003200ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
AntialiasCoverage152,22 → 153,220.003200ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
AntialiasCoverage78,108 → 78,1100.003200ΔRGB(-73,-73,-73)antialiasing coverage residue on a shared outline
AntialiasCoverage135,109 → 136,1100.003200ΔRGB(-13,-13,-13)antialiasing coverage residue on a shared outline
AntialiasCoverage8,109 → 9,1100.003200ΔRGB(9,9,9)antialiasing coverage residue on a shared outline
AntialiasCoverage22,112 → 22,1130.003200ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
AntialiasCoverage145,24 → 145,250.002667ΔRGB(-25,-25,-25)antialiasing coverage residue on a shared outline
AntialiasCoverage145,48 → 145,490.002667ΔRGB(-57,-57,-57)antialiasing coverage residue on a shared outline
AntialiasCoverage150,52 → 151,520.002667ΔRGB(-48,-48,-48)antialiasing coverage residue on a shared outline
AntialiasCoverage24,105 → 25,1050.002667ΔRGB(-25,-25,-25)antialiasing coverage residue on a shared outline
AntialiasCoverage74,105 → 75,1050.002667ΔRGB(-48,-48,-48)antialiasing coverage residue on a shared outline
AntialiasCoverage76,106 → 77,1060.002667ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
Missing145,13 → 145,140.002133candidate lacks paint present in reference (0.002133%)
Extra145,48 → 145,490.002133candidate adds paint absent from reference (0.002133%)
Extra148,52 → 149,520.002133candidate adds paint absent from reference (0.002133%)
Extra74,105 → 75,1050.002133candidate adds paint absent from reference (0.002133%)
Extra78,109 → 78,1100.002133candidate adds paint absent from reference (0.002133%)
Extra78,110 → 78,1110.002133candidate adds paint absent from reference (0.002133%)
AntialiasCoverage151,11 → 151,110.002133ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage146,12 → 146,130.002133ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
AntialiasCoverage146,22 → 147,220.002133ΔRGB(59,59,59)antialiasing coverage residue on a shared outline
AntialiasCoverage153,23 → 153,230.002133ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage154,24 → 154,250.002133ΔRGB(-39,-39,-39)antialiasing coverage residue on a shared outline
AntialiasCoverage154,48 → 154,490.002133ΔRGB(-48,-48,-48)antialiasing coverage residue on a shared outline
AntialiasCoverage148,52 → 148,520.002133ΔRGB(-39,-39,-39)antialiasing coverage residue on a shared outline
AntialiasCoverage148,93 → 148,940.002133ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage22,106 → 22,1070.002133ΔRGB(59,59,59)antialiasing coverage residue on a shared outline
AntialiasCoverage134,110 → 135,1100.002133ΔRGB(10,10,10)antialiasing coverage residue on a shared outline
AntialiasCoverage23,113 → 23,1130.002133ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage24,114 → 25,1140.002133ΔRGB(-39,-39,-39)antialiasing coverage residue on a shared outline
AntialiasCoverage74,114 → 75,1140.002133ΔRGB(-39,-39,-39)antialiasing coverage residue on a shared outline
Extra145,24 → 145,250.001600candidate adds paint absent from reference (0.001600%)
Extra150,52 → 150,520.001600candidate adds paint absent from reference (0.001600%)
Extra24,105 → 25,1050.001600candidate adds paint absent from reference (0.001600%)
Extra78,108 → 78,1080.001600candidate adds paint absent from reference (0.001600%)
AntialiasCoverage152,12 → 152,120.001600ΔRGB(-3,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage147,21 → 148,210.001600ΔRGB(30,30,30)antialiasing coverage residue on a shared outline
source · cases/overflow-clipping/overflow-scroll-print-clip.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5<title>overflow scroll in print</title>
6<style>
7  @page { size: 304px 184px; margin: 0; }
8  html { font-family: ParitySans; line-height: 1.5; }
9  * { margin: 0; box-sizing: border-box; }
10  html, body { background: #ffffff; }
11  .wrap { padding: 30px; }
12  /* In print, CSS Overflow permits a scroll-overflow indication and leaves
13     printed overflow placement undefined. This is a Chrome compatibility
14     canary, not a normative assertion about scrollbar pixels or clipping. */
15  .clip {
16    overflow: scroll;
17    width: 160px;
18    height: 120px;
19    background: #fdf2e9;
20    border: 3px solid #7e5109;
21  }
22  .child {
23    width: 250px;
24    height: 200px;
25    background: #ca6f1e;
26  }
27</style>
28</head>
29<body>
30  <div class="wrap">
31    <div class="clip">
32      <div class="child"></div>
33    </div>
34  </div>
35</body>
36</html>
REFERENCE-DISPUTED 888 px · above-floor 0.30% · raw 0.34% max-page diff overflow-axis-visible-hidden-coercion · visible-hidden-axis-coercion · REFERENCE DISPUTEDMissingmissing 0.3%extra 0.3%ΔE 0.2
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
why: candidate lacks paint present in reference (0.3%)
overflow-x:visible plus overflow-y:hidden coerces the x axis to non-visible clipping; catches preserving visible overflow on the x axis.
reference dispute: CSS Overflow 3 section 3.1 makes visible compute to auto when the other axis is scrollable, which Ironpress implements. In print, auto inherits scroll's undefined overflow placement, so Chrome's scrollbar geometry and clipping pixels are a compatibility canary, not a normative oracle.
regions (115 total; showing 64 representatives)

Complete component census grouped by dominant raster class; representative details are bounded.

Complete dominant-class aggregates

classregionspixelsunion bbox (CSS px)largest pxmaximum magnitude
ColorErr815504,0 → 80,80250total 0.9% · largest 0.4% · max ΔE 0.2
Extra1915910,68 → 74,7761total 0.3% · largest 0.10%
Missing151795,68 → 73,7743total 0.3% · largest 0.07%

Representative region details (worst-first)

classbbox (CSS px)area%magnitudereason
AntialiasCoverage80,0 → 80,800.4ΔE 0.2 ΔRGB(-4,-4,-5)antialiasing coverage residue on a shared outline
Extra22,68 → 41,680.10candidate adds paint absent from reference (0.10%)
AntialiasCoverage22,77 → 41,770.10ΔRGB(-73,-73,-73)antialiasing coverage residue on a shared outline
Extra22,77 → 41,770.09candidate adds paint absent from reference (0.09%)
ColorValue62,65 → 62,800.08ΔE 0.2 ΔRGB(-1,-1,-1)fill recolour ΔRGB(-1,-1,-1) (ΔE 0.2)
Missing6,73 → 10,760.07candidate lacks paint present in reference (0.07%)
Missing6,68 → 10,710.07candidate lacks paint present in reference (0.07%)
Missing69,74 → 72,770.06candidate lacks paint present in reference (0.06%)
Missing69,68 → 72,710.06candidate lacks paint present in reference (0.06%)
AntialiasCoverage69,70 → 69,750.03ΔRGB(34,34,34)antialiasing coverage residue on a shared outline
Extra10,70 → 10,750.03candidate adds paint absent from reference (0.03%)
AntialiasCoverage43,68 → 44,700.01ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage4,71 → 6,720.01ΔRGB(2,2,2)antialiasing coverage residue on a shared outline
AntialiasCoverage19,69 → 20,700.009600ΔRGB(18,18,18)antialiasing coverage residue on a shared outline
AntialiasCoverage72,71 → 73,720.009600ΔRGB(10,10,10)antialiasing coverage residue on a shared outline
AntialiasCoverage21,68 → 22,680.008000ΔRGB(-65,-65,-65)antialiasing coverage residue on a shared outline
AntialiasCoverage40,68 → 41,680.008000ΔRGB(-48,-48,-48)antialiasing coverage residue on a shared outline
Missing18,71 → 18,720.006400candidate lacks paint present in reference (0.006400%)
Missing18,73 → 18,740.006400candidate lacks paint present in reference (0.006400%)
AntialiasCoverage20,68 → 20,680.006400ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage18,71 → 18,710.006400ΔRGB(48,48,48)antialiasing coverage residue on a shared outline
AntialiasCoverage18,73 → 18,740.006400ΔRGB(65,65,65)antialiasing coverage residue on a shared outline
AntialiasCoverage44,73 → 45,740.006400ΔRGB(-16,-16,-16)antialiasing coverage residue on a shared outline
AntialiasCoverage44,74 → 44,750.006400ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage20,76 → 21,770.006400ΔRGB(-13,-13,-13)antialiasing coverage residue on a shared outline
AntialiasCoverage41,76 → 42,770.006400ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
Extra74,72 → 74,720.004800candidate adds paint absent from reference (0.004800%)
Extra41,77 → 42,770.004800candidate adds paint absent from reference (0.004800%)
AntialiasCoverage42,68 → 42,680.004800ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
AntialiasCoverage18,70 → 19,700.004800ΔRGB(10,10,10)antialiasing coverage residue on a shared outline
AntialiasCoverage44,70 → 44,710.004800ΔRGB(-17,-17,-17)antialiasing coverage residue on a shared outline
AntialiasCoverage73,73 → 73,730.004800ΔRGB(10,10,10)antialiasing coverage residue on a shared outline
AntialiasCoverage18,74 → 19,750.004800ΔRGB(20,20,20)antialiasing coverage residue on a shared outline
AntialiasCoverage19,75 → 19,760.004800ΔRGB(10,10,10)antialiasing coverage residue on a shared outline
AntialiasCoverage43,75 → 44,760.004800ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage42,76 → 43,760.004800ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
Extra42,68 → 42,680.003200candidate adds paint absent from reference (0.003200%)
Extra21,77 → 21,770.003200candidate adds paint absent from reference (0.003200%)
AntialiasCoverage9,70 → 10,700.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage9,70 → 9,700.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage70,70 → 70,700.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage8,70 → 8,700.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage70,70 → 71,700.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage7,71 → 8,710.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage71,71 → 71,710.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage7,71 → 7,710.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage72,71 → 72,710.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage6,71 → 6,710.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage45,72 → 45,720.003200ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage74,72 → 74,720.003200ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage18,72 → 18,720.003200ΔRGB(98,98,98)antialiasing coverage residue on a shared outline
AntialiasCoverage5,73 → 5,730.003200ΔRGB(29,29,29)antialiasing coverage residue on a shared outline
AntialiasCoverage6,73 → 6,730.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage6,73 → 7,730.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage72,73 → 72,730.003200ΔRGB(73,73,73)antialiasing coverage residue on a shared outline
AntialiasCoverage7,74 → 7,740.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage71,74 → 72,740.003200ΔRGB(73,73,73)antialiasing coverage residue on a shared outline
AntialiasCoverage8,74 → 8,740.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage71,74 → 71,740.003200ΔRGB(73,73,73)antialiasing coverage residue on a shared outline
AntialiasCoverage8,74 → 9,740.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage70,74 → 70,740.003200ΔRGB(73,73,73)antialiasing coverage residue on a shared outline
AntialiasCoverage9,75 → 9,750.003200ΔRGB(86,86,86)antialiasing coverage residue on a shared outline
AntialiasCoverage69,75 → 70,750.003200ΔRGB(73,73,73)antialiasing coverage residue on a shared outline
AntialiasCoverage20,76 → 20,760.003200ΔRGB(-5,-5,-5)antialiasing coverage residue on a shared outline
source · cases/overflow-clipping/overflow-axis-visible-hidden-coercion.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5<style>
6  @page { size: 184px 144px; margin: 0; }
7  html { font-family: ParitySans; line-height: 1.5; }
8  * { margin: 0; box-sizing: border-box; }
9  html, body { background: #ffffff; }
10  body { padding: 30px; }
11  .box {
12    width: 80px;
13    height: 80px;
14    overflow-x: visible;
15    overflow-y: hidden;
16    background: #d9d9d9;
17  }
18  .child {
19    width: 130px;
20    height: 130px;
21    background: #0a7f2e;
22  }
23</style>
24</head>
25<body>
26  <div class="box"><div class="child"></div></div>
27</body>
28</html>
REFERENCE-DISPUTED 1203 px · above-floor 0.23% · raw 0.23% max-page diff overflow-x-y-separate · overflow-x-overflow-y · REFERENCE DISPUTEDExtramissing 0.2%extra 0.3%ΔE 17.3
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
why: candidate adds paint absent from reference (0.3%)
overflow-x:hidden makes the visible y value compute to auto, so both axes constrain the oversized child. Catches renderers that retain visible y overflow instead of applying the CSS Overflow axis-coercion rule.
reference dispute: CSS Overflow 3 section 3.1 makes visible compute to auto when the other axis is scrollable, which Ironpress implements. In static media, section 3.1.3 permits a UA overflow indication and section 5.1 leaves its appearance, size, and edge UA-defined; Chrome's scrollbar pixels are a compatibility canary, not a normative oracle.
regions (123 total; showing 64 representatives)

Complete component census grouped by dominant raster class; representative details are bounded.

Complete dominant-class aggregates

classregionspixelsunion bbox (CSS px)largest pxmaximum magnitude
Missing12381142,3 → 154,107325total 0.2% · largest 0.2%
Extra28517144,6 → 154,103161total 0.3% · largest 0.09%
ColorErr83305142,6 → 154,10791total 0.2% · largest 0.05%

Representative region details (worst-first)

classbbox (CSS px)area%magnitudereason
Missing142,3 → 142,1070.2candidate lacks paint present in reference (0.2%)
Extra146,96 → 153,1030.09candidate adds paint absent from reference (0.09%)
Extra154,24 → 154,540.06candidate adds paint absent from reference (0.06%)
AntialiasCoverage144,25 → 145,530.05ΔRGB(-98,-98,-98)antialiasing coverage residue on a shared outline
Extra144,26 → 144,530.05candidate adds paint absent from reference (0.05%)
Extra147,6 → 151,110.05candidate adds paint absent from reference (0.05%)
Extra145,14 → 153,140.03candidate adds paint absent from reference (0.03%)
Missing145,95 → 154,950.02candidate lacks paint present in reference (0.02%)
AntialiasCoverage145,13 → 153,140.02ΔRGB(-73,-73,-73)antialiasing coverage residue on a shared outline
AntialiasCoverage145,95 → 153,950.02ΔRGB(73,73,73)antialiasing coverage residue on a shared outline
AntialiasCoverage148,21 → 150,210.005831ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
Extra148,58 → 150,580.004665candidate adds paint absent from reference (0.004665%)
Missing153,13 → 154,140.004082candidate lacks paint present in reference (0.004082%)
Missing148,21 → 150,210.003499candidate lacks paint present in reference (0.003499%)
AntialiasCoverage147,11 → 147,120.003499ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
AntialiasCoverage152,22 → 153,220.003499ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
AntialiasCoverage146,96 → 147,970.003499ΔRGB(-20,-20,-20)antialiasing coverage residue on a shared outline
AntialiasCoverage151,97 → 152,980.003499ΔRGB(-30,-30,-30)antialiasing coverage residue on a shared outline
AntialiasCoverage145,24 → 145,250.002915ΔRGB(-25,-25,-25)antialiasing coverage residue on a shared outline
AntialiasCoverage154,54 → 154,550.002915ΔRGB(-57,-57,-57)antialiasing coverage residue on a shared outline
AntialiasCoverage148,58 → 149,580.002915ΔRGB(-48,-48,-48)antialiasing coverage residue on a shared outline
Missing145,13 → 145,140.002332candidate lacks paint present in reference (0.002332%)
Extra145,54 → 145,550.002332candidate adds paint absent from reference (0.002332%)
AntialiasCoverage151,11 → 151,110.002332ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage146,12 → 146,130.002332ΔRGB(39,39,39)antialiasing coverage residue on a shared outline
AntialiasCoverage146,22 → 147,220.002332ΔRGB(59,59,59)antialiasing coverage residue on a shared outline
AntialiasCoverage153,23 → 153,230.002332ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage154,24 → 154,250.002332ΔRGB(-39,-39,-39)antialiasing coverage residue on a shared outline
AntialiasCoverage150,58 → 151,580.002332ΔRGB(-57,-57,-57)antialiasing coverage residue on a shared outline
Extra145,24 → 145,250.001749candidate adds paint absent from reference (0.001749%)
AntialiasCoverage152,12 → 152,120.001749ΔRGB(-3,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage147,21 → 148,210.001749ΔRGB(30,30,30)antialiasing coverage residue on a shared outline
AntialiasCoverage151,21 → 151,210.001749ΔRGB(30,30,30)antialiasing coverage residue on a shared outline
AntialiasCoverage145,54 → 145,550.001749ΔRGB(-65,-65,-65)antialiasing coverage residue on a shared outline
Missing148,21 → 148,210.001166candidate lacks paint present in reference (0.001166%)
Missing151,21 → 151,210.001166candidate lacks paint present in reference (0.001166%)
Extra152,11 → 152,110.001166candidate adds paint absent from reference (0.001166%)
Extra145,55 → 145,550.001166candidate adds paint absent from reference (0.001166%)
Extra154,55 → 154,550.001166candidate adds paint absent from reference (0.001166%)
Extra145,56 → 145,560.001166candidate adds paint absent from reference (0.001166%)
Extra153,56 → 153,560.001166candidate adds paint absent from reference (0.001166%)
Extra146,57 → 147,570.001166candidate adds paint absent from reference (0.001166%)
Extra152,57 → 152,570.001166candidate adds paint absent from reference (0.001166%)
Extra147,58 → 148,580.001166candidate adds paint absent from reference (0.001166%)
Extra151,58 → 151,580.001166candidate adds paint absent from reference (0.001166%)
AntialiasCoverage149,9 → 149,90.001166ΔRGB(-30,-30,-30)antialiasing coverage residue on a shared outline
AntialiasCoverage146,22 → 146,220.001166ΔRGB(37,37,37)antialiasing coverage residue on a shared outline
AntialiasCoverage145,23 → 145,230.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage153,55 → 153,550.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage146,56 → 146,560.001166ΔRGB(-30,-30,-30)antialiasing coverage residue on a shared outline
AntialiasCoverage153,56 → 153,560.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage146,57 → 147,570.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage152,57 → 152,570.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage147,57 → 148,570.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
AntialiasCoverage151,57 → 151,570.001166ΔRGB(-10,-10,-10)antialiasing coverage residue on a shared outline
ColorValue149,100 → 149,1000.001166ΔRGB(-20,-20,-20)fill recolour ΔRGB(-20,-20,-20) (ΔE 0)
Missing153,12 → 153,120.000583candidate lacks paint present in reference (0.000583%)
Missing146,13 → 146,130.000583candidate lacks paint present in reference (0.000583%)
Missing147,21 → 147,210.000583candidate lacks paint present in reference (0.000583%)
Missing152,21 → 152,210.000583candidate lacks paint present in reference (0.000583%)
Missing146,22 → 146,220.000583candidate lacks paint present in reference (0.000583%)
Extra147,11 → 147,110.000583candidate adds paint absent from reference (0.000583%)
Extra152,12 → 152,120.000583candidate adds paint absent from reference (0.000583%)
Extra146,12 → 146,120.000583candidate adds paint absent from reference (0.000583%)
source · cases/overflow-clipping/overflow-x-y-separate.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5<title>overflow-x and overflow-y separate</title>
6<style>
7  @page { size: 304px 176px; margin: 0; }
8  html { font-family: ParitySans; line-height: 1.5; }
9  * { margin: 0; box-sizing: border-box; }
10  html, body { background: #ffffff; }
11  .wrap { padding: 30px; }
12  /* Because hidden is a scrollable overflow value, the visible y value
13     computes to auto. Both axes therefore constrain the child. */
14  .clip {
15    overflow-x: hidden;
16    overflow-y: visible;
17    width: 160px;
18    height: 110px;
19    background: #eafaf1;
20    border: 3px solid #145a32;
21  }
22  .child {
23    width: 250px;
24    height: 190px;
25    background: #229954;
26  }
27</style>
28</head>
29<body>
30  <div class="wrap">
31    <div class="clip">
32      <div class="child"></div>
33    </div>
34  </div>
35</body>
36</html>
PASS visually equivalent · no rejecting defect · thresholded evidence 0.13% · raw 0.16% (914 px) overflow-hidden-border-radius · hidden-with-border-radiusPASS via CSS-scale observation: sub-CSS shared-colour coverageAntialiasCoverageΔE 0.9
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
why: visually accepted coverage phase; raw antialiasing coverage residue on a shared outline
overflow:hidden combined with border-radius clips the overflowing child to the rounded corners of the clip box.
regions (183 total; showing 64 representatives)

Complete component census grouped by dominant raster class; representative details are bounded.

Complete dominant-class aggregates

classregionspixelsunion bbox (CSS px)largest pxmaximum magnitude
ColorErr1839143,3 → 167,127372total 0.4% · largest 0.2%

Representative region details (worst-first)

classbbox (CSS px)area%magnitudereason
AntialiasCoverage26,127 → 144,1270.2ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage167,26 → 167,1040.1ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage25,3 → 27,30.002771ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage3,25 → 3,270.002771ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage144,3 → 145,30.002309ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage3,104 → 3,1050.002309ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage146,4 → 147,40.001847ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage167,23 → 167,240.001847ΔRGB(0,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage4,106 → 4,1070.001847ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage23,127 → 24,1270.001847ΔRGB(0,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage23,4 → 24,40.001386ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage148,4 → 148,40.001386ΔRGB(0,-2,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage166,21 → 166,210.001386ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage166,22 → 166,230.001386ΔRGB(-1,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage4,23 → 4,240.001386ΔRGB(0,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage167,106 → 167,1070.001386ΔRGB(0,-4,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage166,108 → 166,1080.001386ΔRGB(0,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage4,108 → 4,1080.001386ΔRGB(0,-2,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage21,126 → 21,1260.001386ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage22,126 → 23,1260.001386ΔRGB(-1,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage148,126 → 148,1260.001386ΔRGB(0,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage146,127 → 147,1270.001386ΔRGB(0,-4,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage22,4 → 22,40.000924ΔRGB(-1,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage21,4 → 21,40.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage149,4 → 149,40.000924ΔRGB(0,-3,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage20,4 → 20,40.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage150,4 → 150,40.000924ΔRGB(0,-3,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage19,5 → 19,50.000924ΔRGB(-1,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage151,5 → 151,50.000924ΔRGB(0,-2,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage17,5 → 18,50.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage17,6 → 17,60.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage16,6 → 16,60.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage155,7 → 155,70.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage14,7 → 15,70.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage157,8 → 157,80.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage158,9 → 159,90.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage162,13 → 162,130.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage163,14 → 163,140.000924ΔRGB(0,-1,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage7,14 → 7,150.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage164,15 → 164,150.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage164,16 → 164,160.000924ΔRGB(0,-1,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage6,16 → 6,160.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage6,17 → 6,170.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage5,17 → 5,180.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage165,18 → 165,180.000924ΔRGB(-1,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage165,18 → 165,190.000924ΔRGB(0,-2,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage5,19 → 5,190.000924ΔRGB(-1,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage4,20 → 4,200.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage166,20 → 166,200.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage4,21 → 4,210.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage4,22 → 4,220.000924ΔRGB(-1,-3,-4)antialiasing coverage residue on a shared outline
AntialiasCoverage166,109 → 166,1090.000924ΔRGB(0,-3,-3)antialiasing coverage residue on a shared outline
AntialiasCoverage4,109 → 4,1090.000924ΔRGB(0,-3,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage166,110 → 166,1100.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage4,110 → 4,1100.000924ΔRGB(0,-3,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage165,111 → 165,1110.000924ΔRGB(-1,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage5,111 → 5,1110.000924ΔRGB(0,-2,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage165,112 → 165,1120.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage165,112 → 165,1130.000924ΔRGB(0,-2,-2)antialiasing coverage residue on a shared outline
AntialiasCoverage164,113 → 164,1130.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage164,114 → 164,1140.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage164,114 → 164,1150.000924ΔRGB(0,-2,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage7,115 → 7,1150.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
AntialiasCoverage8,117 → 8,1170.000924ΔRGB(0,-1,-1)antialiasing coverage residue on a shared outline
source · cases/overflow-clipping/overflow-hidden-border-radius.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5<title>overflow hidden with border-radius</title>
6<style>
7  @page { size: 312px 192px; margin: 0; }
8  html { font-family: ParitySans; line-height: 1.5; }
9  * { margin: 0; box-sizing: border-box; }
10  html, body { background: #ffffff; }
11  .wrap { padding: 30px; }
12  /* overflow:hidden combined with border-radius clips the overflowing
13     child to the rounded corners of the clip box. */
14  .clip {
15    overflow: hidden;
16    border-radius: 28px;
17    width: 170px;
18    height: 130px;
19    background: #fdedec;
20    border: 3px solid #7b241c;
21  }
22  .child {
23    width: 260px;
24    height: 210px;
25    background: #c0392b;
26  }
27</style>
28</head>
29<body>
30  <div class="wrap">
31    <div class="clip">
32      <div class="child"></div>
33    </div>
34  </div>
35</body>
36</html>
PASS exact match overflow-clip · clip
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:clip clips the oversized child to the clip box with no scroll container (modern clip keyword).
PASS exact match overflow-clip-float-no-bfc · clip-no-float-containment
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:clip clips overflow but does not establish a new formatting context, so a following red block is not pushed below the float; catches treating clip like hidden for BFC creation.
PASS exact match overflow-hidden-clip · hidden
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:hidden clips an oversized in-flow child to the clip box; the child is cut off at the right and bottom edges.
PASS exact match overflow-hidden-flex-item · hidden-on-flex-item
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
A flex item with overflow:hidden clips its oversized inner block to the flex item box while the sibling item is unaffected.
PASS exact match overflow-hidden-grid-item · hidden-on-grid-item
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
A grid cell with overflow:hidden clips its oversized inner block to the cell box while the sibling cell is unaffected.
PASS exact match overflow-hidden-nested · nested-clip-intersection
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
Nested overflow:hidden boxes; the visible region is the intersection of the outer and inner clip rectangles, with the grandchild clipped by both.
PASS exact match overflow-hidden-text-clip · hidden-clips-text
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:hidden on a short fixed-height box clips overflowing text lines below the box edge (bundled ParitySans).
PASS exact match overflow-invalid-value-preserves-hidden · invalid-declaration-discard
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
A later invalid overflow value is discarded, so the earlier overflow:hidden still clips oversized painted content on both axes.
PASS exact match overflow-logical-inline-clip · logical-inline-block-axes
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow-inline:clip and overflow-block:visible clip only inline-axis overflow in horizontal writing mode; catches ignoring logical overflow or clipping both axes.
PASS exact match overflow-padding-box-clip · padding-box-clip-edge
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:hidden on a padded box clips its oversized child at the PADDING box: the child fills the padding box out to the inner border edge and is cut there, leaving the border fully visible and the top/left padding band showing.
PASS exact match overflow-visible-clip-axis · visible-x-clip-y
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow-x:visible with overflow-y:clip preserves horizontal overflow while clipping vertical overflow; catches single-rectangle clipping of both axes.
PASS exact match overflow-visible-no-clip · visible
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:visible (explicit) does not clip; the oversized child paints beyond the parent box on the right and bottom.

line-clamp — 100.00% verified visual parity PASS 1 · FAIL 0 · REFERENCE-DISPUTED 0all categories ↑

PASS visually equivalent · no rejecting defect · thresholded evidence 0.03% · raw 0.03% (72 px) overflow-line-clamp-two-lines · two-line-webkit-clampPASS via CSS-scale observation: stable same-coordinate outline phaseMissingmissing 0.02%extra 0.009350%ΔE 16.4
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
why: visually accepted coverage phase; raw candidate lacks paint present in reference (0.02%)
-webkit-line-clamp:2 with vertical box layout clips static text to two lines before the red block; catches unsupported line-clamp rendering all lines.
regions (11 total; showing 11 representatives)

Complete component census grouped by dominant raster class; representative details are bounded.

Complete dominant-class aggregates

classregionspixelsunion bbox (CSS px)largest pxmaximum magnitude
ColorErr642117,33 → 128,358total 0.04% · largest 0.007127%
Missing320117,33 → 126,3510total 0.02% · largest 0.008909%
Extra210123,33 → 127,355total 0.008909% · largest 0.004454%

Representative region details (worst-first)

classbbox (CSS px)area%magnitudereason
Missing126,33 → 126,350.008909candidate lacks paint present in reference (0.008909%)
AntialiasCoverage126,33 → 126,350.007127ΔRGB(80,42,68)antialiasing coverage residue on a shared outline
AntialiasCoverage117,33 → 117,350.006236ΔRGB(80,42,68)antialiasing coverage residue on a shared outline
AntialiasCoverage121,33 → 122,350.006236ΔRGB(80,42,68)antialiasing coverage residue on a shared outline
AntialiasCoverage123,33 → 123,350.006236ΔRGB(-34,-18,-29)antialiasing coverage residue on a shared outline
AntialiasCoverage127,33 → 128,350.006236ΔRGB(-176,-92,-150)antialiasing coverage residue on a shared outline
AntialiasCoverage118,33 → 118,350.005345ΔRGB(-96,-50,-82)antialiasing coverage residue on a shared outline
Missing117,33 → 117,350.004454candidate lacks paint present in reference (0.004454%)
Missing122,33 → 122,350.004454candidate lacks paint present in reference (0.004454%)
Extra123,33 → 123,350.004454candidate adds paint absent from reference (0.004454%)
Extra127,33 → 127,350.004454candidate adds paint absent from reference (0.004454%)
source · cases/overflow-clipping/overflow-line-clamp-two-lines.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5<style>
6  @page { size: 200px 136px; margin: 0; }
7  html { font-family: ParitySans; line-height: 1.5; }
8  * { margin: 0; box-sizing: border-box; }
9  html, body { background: #ffffff; }
10  p {
11    display: -webkit-box;
12    -webkit-box-orient: vertical;
13    -webkit-line-clamp: 2;
14    line-clamp: 2;
15    overflow: hidden;
16    width: 135px;
17    font-size: 14px;
18    line-height: 20px;
19    color: #ffffff;
20    background: #0a7f2e;
21  }
22  .under {
23    width: 135px;
24    height: 45px;
25    background: #c62828;
26  }
27</style>
28</head>
29<body>
30  <p>alpha beta gamma delta epsilon zeta eta theta iota kappa lambda</p>
31  <div class="under"></div>
32</body>
33</html>

overflow-clip-margin — 100.00% verified visual parity PASS 1 · FAIL 0 · REFERENCE-DISPUTED 0all categories ↑

PASS exact match overflow-clip-margin · clip-edge-extension
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
overflow:clip with overflow-clip-margin:18px lets the child bleed past the box edge; catches clipping exactly at the padding box.

scrollbar-gutter — 100.00% verified visual parity PASS 2 · FAIL 0 · REFERENCE-DISPUTED 0all categories ↑

PASS exact match overflow-scrollbar-gutter-both-edges · stable-both-edges
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
scrollbar-gutter:stable both-edges reserves symmetric inline gutters around the child; catches treating both-edges as plain stable or ignoring scrollbar-gutter entirely.
PASS exact match overflow-scrollbar-gutter-stable · stable
Chrome ref
Chrome ref
ironpress
ironpress
full-page >1.0%/channel diff
full-page >1.0%/channel diff
scrollbar-gutter:stable reserves inline gutter space in a non-overflowing auto scroll container; catches ignoring the gutter and letting the child fill the full red box.