ui modal: overflow indicator #250
Replies: 4 comments 11 replies
-
I think having a thin border above the action buttons might help as it is likely that some of the text will be partially obscured, encouraging the user to scroll down. |
Beta Was this translation helpful? Give feedback.
-
This is mainly a MacOS and iOS issue right? Because they started hiding the scroll bar from Mountain Lion onwards? Could be that other OSs have implemented this behaviour as well by now, but as I recall, on other OSs you can see the scrollbar at all time and will know the modal is scrollable, so there is no problem to solve: the scrollbar is the "overflow indicator". If I have understood the context correctly, we could also look into styling the scrollbar itself, so it shows also on MacOS and iOS. I've looked into it briefly but a little bit unsure whether this has sufficient browser support to pull it off. Alternatively, the gradient solution @cooper-joe suggested could possibly also work. One precondition would be that the scrolling content has some whitespace below it and the gradient area does not have a greater height than that whitespace. If the gradient area has a greater height than that whitespace you'll see it even when the box is not scrollable, or when you scroll to the bottom. The solution @mediremi suggested is always visible, very simple to implement, not at all error-prone and pretty clear to the user. I personally don't think that showing this border looks too bad either. There is one minor issue though: when the line-height and the wrapper height are such that the bottom-border of the scroll box falls between two lines of text, it will still not be immediately be visible to the user that there is more content below. I mention two lines of text above where this could happen, but I guess this would be even more likely if we're showing a scrollable form in a modal. Our form fields are separated by a fair amount of whitespace, so it's pretty likely the user will not see the form is scrollable. |
Beta Was this translation helpful? Give feedback.
-
I think we should consider this a user/OS preference. See this article: https://www.nytimes.com/2017/02/02/technology/personaltech/solving-the-case-of-the-disappearing-scroll-bars.html. Since a user can enable and disable it I don't think it's up to us to do anything about it. In my system settings I can just change my settings to this: That shows the scrollbars all the time. If an OS makes deliberate changes to how scrollbars behave then I don't think we should do anything about that (even though I see the point). |
Beta Was this translation helpful? Give feedback.
-
I think if you're showing that much content in a modal, that's maybe your core issue. We could just prioritize visibility of the content and not cut off content? That way:
I think I'd personal prefer that over a technical solution that attempts to solve what I perceive as a slight abuse of the component (putting too much content in it). |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
The problem
An issue has come up a handful of times that a user doesn't realize there is more content inside a scrollable modal. This happens when the content overflows the boundary at a gap between items, so there isn't the cut-off item to give the "there's more below" hint. This is especially a problem on operating systems/browsers that encourage hiding of scrollbars.
An idea for a solution
I've been experimenting with the idea of adding an overflow indicator that is more prominent than a scrollbar (or, actually visible when scrollbars are default hidden). The indicator would be a fading-transparent overlay at the bottom of the visible area. Content near the bottom of the visible area would be slightly faded and give a clear indicator that there is more to be found beyond the visible area.
I've naively tested the idea using css
mask-image
, and I think it works visually:However, this impementation has issues. The bottom of the scrollbar also gets overlaid by the fade. This would obscure interactive areas of the scrollbar. The content also requires a
padding-bottom
, which may look awkward on non-scrolling modals.Questions
Before I think more about this and whether it would work UX-wise, I want to determine the technical feasibility of this idea, the questions are:
Input and feedback appreciated, thanks.
For reference, the above was achieved with the following css changes to
ModalContent.js
:Beta Was this translation helpful? Give feedback.
All reactions