Issue metadata
Sign in to add a comment
|
Border-radius with transform and overflow: hidden causes blurriness
Reported by
chris.jo...@gmail.com,
May 29 2017
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Example URL: Steps to reproduce the problem: 1. Go to messenger.com 2. Log in with a Facebook account, if required 3. Play a game, e.g. Words With Friends 4. Resize the browser, note that at some resolutions blurriness appears Repro video attached What is the expected behavior? No blurriness should appear What went wrong? Blurriness appears. Additional video with repro steps attached (note that for some browser sizes the blurriness disappears). Disabling border-radius or the 2D transform on one of the elements corrects the issue. Resizing the browser to some widths/heights also corrects the issue. Does it occur on multiple sites: Yes Is it a problem with a plugin? No Did this work before? No Does this work in other browsers? Yes Chrome version: 58.0.3029.110 Channel: stable OS Version: OS X 10.12.5 Flash Version: I have so far been unable to reproduce the problem in jsfiddle or another environment.
,
May 29 2017
,
May 30 2017
,
May 31 2017
The border-radius and transforms are probably causing a mask layer to be created, which may introduce bluriness particularly if the transform causes a scale or a non-pixel-aligned translation. That explains why some positions/sizes do not seem blurry. My guess is that before Chrome 58 the border radius did not even apply in this situation. We've fixed that bug and we will not revert the fix. Can you remove the border-radius? I doubt it was applying in Chrome before M-58. Can you add a will-change: transform to the overflow scrolling container? That might remove the need for the mask.
,
May 31 2017
This issue (blurriness) existed prior to Chrome 58. will-change: transform has no impact. It seems reasonable that this is being caused by a mask, as using a mode other than overflow: hidden also causes the issue to go away.
,
May 31 2017
Thank you for providing more feedback. Adding requester "schenney@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 31 2017
Looks like it's using transform: translate(-50%, -50%) to center. This is issue 573146 where when 50% is a fractional value, and we don't pixel snap transform positions so if it is a composited layer it becomes blurry. Scrolling contents are pixel snapped so using overflow: auto | scroll will make the problem go away, but it shouldn't go away with overflow: visible;
,
May 31 2017
That issue seems to refer specifically to transform-3d, which this is not using.
,
Jun 18 2017
The NextAction date has arrived: 2017-06-18
,
Jun 19 2017
flackr@, could you respond to comment #8? chris.john.hawkins@, is there any translate/scale/whatever on the content that is blurry? There is also some chance that the layout happens to give fractional position. And there have been some very recent changes in composited layer position rounding. Could you try Canary? Could you open Developer Tools and look at the computed position of the blurry content to verify that it is a fractional value, and maybe tell us where that value is coming from?
,
Jun 28 2017
The content has a 2D translation on it. The blurriness goes away if I disable the 2D transform OR turn off rounded corners. I still reproduce this on Canary. I have attached a screenshot of the inspector for the element in question, which is _7y class on www.messenger.com. Playing a a game (such as Words With Friends) on Messenger.com then resizing the browser provides a consistent reproduction, depending on the viewport size (e.g. I consistently reproduce with a viewport size of 1536 x 686).
,
Jul 3 2017
The NextAction date has arrived: 2017-07-03
,
Jul 7 2017
This got dropped for some reason. flackr@, still looking for analysis from you.
,
Jul 7 2017
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by nyerramilli@chromium.org
, May 29 2017