[css-overflow][css-containment] overflow:clip and BCFs

overflow:clip is currently defined as the same as overflow:hidden, minus the scrolling abilities.
This implies that it establishes a BCF.

http://dev.w3.org/csswg/css-overflow/#valdef-overflow-clip

Mozilla implements -moz-hidden-unscrollable, which is similar to clip, except that it does not cause the element to establish a BFC.

Should we keep things as they are, or align with Mozilla?

As a reminder, overflow:clip was introduced to be what overflow:visible computes to when contain:paint is specified. We could have achieved the same pain containment effects without this value, but having overflow compute to something other than visible allows the properties that depend on overflow not being visible to be used with non-scrollable paint containment (e.g. text-overflow). Had we not had it, you'd have to use overflow:hidden if you wanted paint:containment and text-overflow, inducing the browser into allocating a larger buffer than needed to prepare for potential scrolling, even though you intend no scrolling.

As far as I know, the properties that depend on overflow not being visible are:
* text-overflow
* resize

If there is a need for the element to establish a BFC for these properties to work normally, then we should to keep the spec as it is. If not, I don't have a strong opinion.

Do they? Doesn't seem so to me, but I might be missing something.

 - Florian

Received on Wednesday, 1 July 2015 15:35:28 UTC