Effects survive nesting
Pixelation, localized distortion, and animated color processing compose across three nested Canvas 2D boundaries. Each parent captures the processed bitmap produced by its child.
Experimental web platform research
Small, focused tests for rendering live DOM through Canvas 2D—and finding the edges of the emerging API.
Experiment 001
Three HTML-in-Canvas layers, with independently routed post-processing at every boundary.
drawElementImage().
The button is still live ordinary DOM, but its clicks do not test canvas hit-testing.
Open in Chrome Canary, enable chrome://flags/#canvas-draw-element, and reload.
The demo paints from the deepest canvas outward. If the fisheye bends chunky pixels and the outer layer color-separates the result, effects are crossing both recursive canvas boundaries.
Observed October 23, 2026
Pixelation, localized distortion, and animated color processing compose across three nested Canvas 2D boundaries. Each parent captures the processed bitmap produced by its child.
Once HTML-in-Canvas is active, the deepest real DOM button renders but does not receive pointer clicks through the ancestor canvases. The ordinary-DOM fallback remains interactive.
Recursive bitmap composition appears functional, while hit-test geometry is not propagated through the same nested canvas chain. This looks like an implementation bug or an unimplemented edge of the experimental API.
Tested with the experimental HTML-in-Canvas implementation enabled in Chromium. The API is under active development; behavior may change.