RE: [css3-ui] Proposal for an "overlay" value for 'overflow'

[Tab Atkins Jr.:]
> 
> I'm fine with slicing up the 'overflow' property into a better theoretical
> structure of sub-properties.  It makes a lot of sense to me.  I agree that
> an "overlay" value is of a conceptually different type than "hidden" or
> "visible", and so having it expand into different sub-properties than the
> latter ones would makes sense.

Whoa. We just agreed on some orthogonality thing this week. What were the
odds?

> 
> 
> > Note: auto-hide scrollbars are of course overlay, and I think this is
> > where the concept makes the most sense as I'm not sure why you'd want
> > scrollbars that are always present *and* hide some of your content.
> > Whereas you definitely want them to have no effect on layout if
> > they're only visible during user interaction.
> 
> Auto-hiding overlay scrollbars are strictly better than always-visible
> overlay scrollbars, I agree.  But I made a case up above why even an
> always-visible one is useful in some cases - if you want the aesthetic
> quality that scrollbars don't show up when the page is sufficiently short,
> but also don't want the geometry of the page to change when they do show
> up, and your design can easily accommodate a permanent 20px or so gutter
> on one side (pretty common), then they're useful.
> So, even if we can't decide to add scrollbars that are *specially* auto-
> hiding, the mere property of them being overlay can be useful to expose.
> 
Auto-hide is what you want for touch, imo. I don't have a strong opinion 
on the always-overlay pattern one way or the other. But if there is going 
to be a more detailed proposal on the topic I would request that any
interesting interactions with CSSOM View properties and methods be clear.
A number of things either exclude the side or rendered scrollbars e.g. 
clientHeight, when elementFromPoint() returns null and other things. It
may well be that nothing changes but it's something to think about.

Received on Friday, 25 January 2013 19:28:15 UTC