Readability
Can people read the words?
Measuring the backdrop under the words.
GB-01 · Test card · Drag the glass
Design a glass panel on the bench, check that the words on it read, and take it home as one small snippet. Real refraction in Chrome and Edge. Frost in Safari and Firefox. A solid panel for anyone who turns transparency down.
02 · The bench
Pick a backdrop, shape the glass and drag it around. The readability check and the cost meter update as you go, and the export at the bottom always matches the stage.
Specimen · Kelp stripes, moving
The same pane in all three modes, so you design for everyone at once.
Can people read the words?
Measuring the backdrop under the words.
What will this cost the device?
Measuring
This device, right now: measuring
03 · The rules
We tested glass on six lab pages before it went near a real site. These rules came out of it. Each card has a button that breaks its rule on the bench, so you can watch the meter react.
Glass over a flat colour is a tinted box. It needs stripes, type or a pattern to bend, or nobody can tell it is glass.
A pane looking through another pane blurs twice and bends twice. It turns to mud and costs double.
When the backdrop moves, every pane bends it again on every frame. In our lab the slowest frames roughly doubled.
A sticky bar re-bends the page on every scroll frame. In the lab a blurred sticky bar took one page down to 1 frame a second on a software GPU. Bars get a solid colour.
Glass shows whatever is behind it, bright stripes included. A tint or a quiet plate keeps the words readable wherever the pane goes.
Only Chrome and Edge can bend light with an SVG filter. Safari and Firefox get frosted glass, and people who turn transparency down get a solid panel.
This row is glass too: six panes over a still pattern, which costs almost nothing. Over moving stripes the rule says two.
04 · How it works
No library does this. The glass is an SVG filter the browser runs on whatever sits behind the pane. The picture below is the real lens map for the pane on your bench right now.
Contrast boosted here so you can see it. The real map is subtler.
backdrop-filter: url(#glass). Only Chrome and Edge accept an SVG filter there, so everyone else gets blur() from the same stylesheet.05 · Take it home
Paste it anywhere in a page. It finds every element with the class gb-glass, builds a lens for each one at its real size, and rebuilds when the size changes.