On Wednesday, July 13, 2022 at 3:54:28 AM UTC+2 Khushal Sagar wrote:

> On Mon, Jul 11, 2022 at 11:40 AM Yoav Weiss <yoavwe...@chromium.org> 
> wrote:
>
>>
>>
>> On Fri, Jul 8, 2022 at 7:22 PM Khushal Sagar <khushalsa...@chromium.org> 
>> wrote:
>>
>>> Contact emailskhushalsa...@chromium.org, vmp...@chromium.org
>>>
>>> Explainer
>>> https://github.com/WICG/shared-element-transitions/blob/main/overflow-on-replaced-elements.md
>>> https://github.com/w3c/csswg-drafts/issues/7058
>>>
>>> Specificationhttps://drafts.csswg.org/css-overflow/#overflow-properties
>>>
>>> Summary
>>>
>>> This change allows developers to use the existing `overflow` property 
>>> with replaced elements that paint outside the content-box. Paired with 
>>> `object-view-box` this can be used to create an image with a custom glow or 
>>> shadow applied, with proper ink-overflow behavior like a CSS shadow would 
>>> have.
>>>
>>> Blink componentBlink>CSS 
>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECSS>
>>>
>>> TAG reviewhttps://github.com/w3ctag/design-reviews/issues/750
>>>
>>> TAG review statusPending
>>>
>>> Risks
>>> Interoperability and Compatibility
>>>
>>> This feature changes the behaviour of the existing overflow property on 
>>> replaced elements (img, video, canvas). Currently `overflow:visible` in a 
>>> developer stylesheet on such elements is ignored during paint and the 
>>> content is clipped to the element's content-box. With this feature, 
>>> `overflow:visible` will result in content outside the element's content-box 
>>> to paint as ink overflow. We've collected use counter data to measure the 
>>> number of sites which could be affected by this. The use counter data 
>>> collected over 1 week of a stable release (M102) is as follows. We 
>>> collected 2 different counters explained below. * The first measures any 
>>> instance where overflow is explicitly set from developer styles to visible. 
>>> The percentage of page loads with this is 2.16%. * The second measures the 
>>> above instances but only includes the cases with object-fit set to cover or 
>>> none or object-position set to any value other than the default (50% 50%). 
>>> The rationale behind this counter is to exclude cases which can not cause 
>>> overflow (such as object-fit:contain), even if overflow is set to visible. 
>>> The percentage of page loads with this is 0.017%.
>>>
>>
>> That's not nothing. Any idea what breakage may look like?
>> Can we maybe collect histograms on *how much* overflow would occur in 
>> those cases? (maybe with ClusterTelemetry initially, to get a rough idea in 
>> the lab)
>>
>
> I ran an analysis on CT using top 100k sites for desktop and top 10k sites 
> on mobile. The raw numbers are here: desktop 
> <https://docs.google.com/spreadsheets/d/1kKWq8kqZOfCXqiHaiamYNDdTs5x1_YJfDTnAgXOIwaE/edit#gid=0>
>  
> and mobile 
> <https://docs.google.com/spreadsheets/d/1SrNyrEe4yzCOIxqNOlNgCk8O58NqqoBlBTd4Wn_gKCc/edit#gid=0>,
>  
> and the rough patch 
> <https://chromium-review.googlesource.com/c/chromium/src/+/3749485> to 
> collect this data. The highlights from the analysis are below:
>
>    - The number of sites which override the default CSS to allow overflow 
>    *and* also had overflow during painting was 13 out of 10k on mobile and 39 
>    out of 63k on desktop (only 63k sites yielded results out of 100k).
>    
>    - I measured the percentage of area painted outside the content box 
>    out of the total painted area. The highest was 88% on desktop and 70% on 
>    mobile.
>
>
I'm not sure what that means in practice. Can you elaborate? Have you 
looked at extreme cases to see the impact there?
 

> I manually went through ~10 sites on both desktop and mobile. For the ones 
> which repro-ed, the breakage was losing rounded corners because 
> border-radius doesn't clip the content if 'overflow' is 'visible'. In fact 
> a few sites had the same code, likely coming from customerly 
> <https://www.customerly.io/> based on class names and the UX. There was 
> one case where an image (used in the background) had object-fit:cover and 
> overflowed outside the content box now. I've attached screenshots for both 
> of these.
>
> Overall I didn't see any case where the overflow occluded any other 
> content on the page.
>

That's reassuring! :)
 

>  
>
>>  
>>
>>>
>>> *Gecko*: No signal (
>>> https://github.com/mozilla/standards-positions/issues/659)
>>>
>>> *WebKit*: No signal (
>>> https://lists.webkit.org/pipermail/webkit-dev/2022-June/032317.html)
>>>
>>> *Web developers*: No signals
>>>
>>> *Other signals*:
>>>
>>> WebView application risks
>>>
>>> Does this intent deprecate or change behavior of existing APIs, such 
>>> that it has potentially high risk for Android WebView-based applications?
>>>
>>> Debuggability
>>>
>>> This is a CSS property which can be debugged in the devtools style panel 
>>> similar to other CSS properties.
>>>
>>> Will this feature be supported on all six Blink platforms (Windows, Mac, 
>>> Linux, Chrome OS, Android, and Android WebView)?Yes
>>>
>>> Is this feature fully tested by web-platform-tests 
>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>> ?Yes
>>>
>>> Flag nameCSSOverflowForReplacedElements
>>>
>>> *Note: Because of the compat risk with this feature, this flag can be 
>>> controlled via Finch. This will allow us to rollback with a server-side 
>>> config change if needed.*
>>>
>>> Requires code in //chrome?False
>>>
>>> Tracking bug
>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1321217
>>>
>>> Estimated milestones
>>>
>>> M105
>>>
>>> Anticipated spec changes
>>>
>>> N/A
>>>
>>> Link to entry on the Chrome Platform Status
>>> https://chromestatus.com/feature/5137515594383360
>>>
>>> Links to previous Intent discussionsIntent to prototype: 
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMLuWUykJWEAqVzcUy15fpBNdA68508Mny_1z--FCBKXRTZOFQ%40mail.gmail.com
>>>  
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/camluwuykjweaqvzcuy15fpbnda68508mny_1z--fcbkxrtz...@mail.gmail.com>
>>>
>>>
>>> This intent message was generated by Chrome Platform Status 
>>> <https://chromestatus.com/>.
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "blink-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to blink-dev+unsubscr...@chromium.org.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMLuWUze8JV6twLfhPBwkXj_UBMGApU048OdY33hYQn_KDj2rA%40mail.gmail.com
>>>  
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMLuWUze8JV6twLfhPBwkXj_UBMGApU048OdY33hYQn_KDj2rA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/7e6d8f9f-cd85-4730-8d0c-01715e4418bbn%40chromium.org.

Reply via email to