Bug 228952 - "Hole punch" rendering glitch in Safari for iOS 15
Summary: "Hole punch" rendering glitch in Safari for iOS 15
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: Safari Technology Preview
Hardware: iPhone / iPad Other
: P2 Normal
Assignee: Nobody
Keywords: InRadar
Depends on:
Reported: 2021-08-10 07:18 PDT by Joseph Pearson
Modified: 2021-08-10 12:09 PDT (History)
4 users (show)

See Also:

The hole-punch effect in Safari for iOS 15 (5.95 MB, image/png)
2021-08-10 07:18 PDT, Joseph Pearson
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Pearson 2021-08-10 07:18:08 PDT
Created attachment 435255 [details]
The hole-punch effect in Safari for iOS 15

When semi-opaque elements are transformed over other content, they can punch a hole in the box behind them, through to the underlying content.

I have a minimal, consistent reproduction here: https://josephpearson.org/experiments/saf-15-holepunch/

See the comments in the HTML source for the CSS properties that seem to be significant to this reduction.

Note that any GPU activity (like the navigation bar shrinking) can "correct" the holepunch. If it doesn't happen on your first try, tap the ghost emoji a few times to retry. Opacity *may* be a red herring, but it has been common to all the instances I've seen. In this case the semi-opacity seems to be the alpha channel in the glyph.

IMPORTANT: I have only observed this in iOS 15 developer betas (from the first one in June through the most recent one). I have not observed it in macOS Safari TP yet.

I have also filed a radar in Apple's Feedback Assistant for this problem: FB9482087
Comment 1 Simon Fraser (smfr) 2021-08-10 08:59:42 PDT
Comment 2 Simon Fraser (smfr) 2021-08-10 09:00:37 PDT
Joseph, what iOS hardware are you seeing this on?
Comment 3 Simon Fraser (smfr) 2021-08-10 09:05:15 PDT
I managed to reproduce on iPhone 7. Might be related to our "background is opaque in rect" logic.
Comment 4 Joseph Pearson 2021-08-10 11:03:18 PDT
Thanks. fwiw, my test device at iOS 15 is an iPhone X.
Comment 5 Simon Fraser (smfr) 2021-08-10 12:09:25 PDT
We believe this is a bug in an underlying framework, and will be fixed in a future OS release.