12 ms·
I was nodding along, when suddenly... > One alternative is to ignore iOS and OS X users. But that’s not very nice. There are many scrolling libraries available
by mietek 13y ago
I was nodding along, when suddenly...
> One alternative is to ignore iOS and OS X users. But that’s not very nice. There are many scrolling libraries available that you can use, such as NiceScroll.
> Or you can just make your own indicator like the one seen at the very start of the article. Just don’t use a horizontal indicator for vertical progression :)
No! Do not do this. Just stop. Stop reinventing and reimplementing the scrollbar.
- bhauer 13y agoAgreed. Not to put to fine a point on it, but if your user is on iOS or OS X, they are accustomed to losing sight of their progress because, as the article says, "Apple knows best." Going out of your way as a content author to correct for the user interface quirks of the reader's preferred reading environment seems extraordinary and unnecessary. Presumably a non-trivial number of iOS and OS X users actually like the fact that scrollbars are hidden from view while reading and it may have been a factor (a small one, admittedly) in their decision process. I agree with the OP in large measure.
- jfb 13y ago"Going out of your way as a content author to correct for the user interface quirks of the reader's preferred reading environment seems extraordinary and unnecessary." I would actually say that it's outright user hostile to do this sort of garbage.
- deleted 13y ago[deleted]
- TheZenPsycho 13y agoIt's my preferred reading environment, but I hate that apple made this decision, because, as my sibling commenter here noted, it's outright user hostile. Apple never really totally understood the "visibility" requirement of usable interfaces. They like to hide things to make them look pretty, and it only leads to better advertising, not better interfaces. Thankfully there's still a setting to always show scrollbars. For now.
- bhauer 13y agoI actually agree with you--I prefer for the scrollbar to remain visible. In my preferred reading environment, a Windows PC running Firefox, it does remain visible. I like clean design, but not at the expense of function. I am firmly of the opinion that too much functionality has been sacrificed from modern user interfaces at the altar of simplicity. I'm nevertheless of the point of view that the content author should not fuss with these specific particulars, leaving them instead to the discretion of the designers of the reading environment itself. The consumer of the content can then weigh the design of those elements when selecting a preferred reading environment.
- TheZenPsycho 13y agoIn principle I agree with you. In this case apple's decision causes actual problems with content. Putting stuff in a scrollable iframe, or overflow scroll pane now involves carefully instructing people on how to scroll it. Or you force your own custom scrollbars. Or just not have scrollable panes-- you could argue that is a good thing, but sometimes they are unavoidable. Like, for instance, here on HN if someone happens to post an extremely long code segment. if you are using a mac, remember that you need to scroll horizontally to read all of the above message. on an ipad use two fingers to scroll it. Do you get my point? Is the above a problem for HN or for Apple or for the User to puzzle out?
- bhauer 13y agoI do get your point, and it's a good one. My opinion about allowing the user the luxury of having selected their preferred reading environment isn't so inflexible to say that you shouldn't afford users some concessions in a scenario such as this. On my PC, I of course do see a scrollbar. In fact, I probably would not at first even realize that I need to instruct viewers on other platforms to interact with the content in any unusual manner. But once aware of it, given the capability to design my content differently to avoid the situation described, I would go with that. Failing that option, I would probably just put instructions in as you've done here. I would fairly steadfastly refuse to implement my own scrollbar functionality because I'd likely fail to implement that in a manner all users on all devices would understand intuitively. For the majority of scenarios, the browsers' default behavior will match the users' expectations and they will be able to consume the content I've created in the fashion with which they are accustomed. As an aside, this conversation reminds me that legacy versions of IE (and maybe current versions; I've not checked) allowed one to affect the appearance of the browser's scrollbar through CSS.
- Camillo 13y agoI like having the scrollbars hidden. If I want to see my progress, I just put two fingers on my trackpad.
- super_mario 13y agoI would go even further and say that the lack of scroll bar in OS X has lead to lower uptake of read material. Here is what scroll bar does for me: 1. It gives me instant feedback about the size of the document (the shorter the scrollbar the bigger the document). 2. It shows me rough position in the document. 3. Provides reading context (I'm 35% into the document and I'm reading on subject X) which aids memorizing the material. I'm a mathematician and numbers are my thing. Some people use number memorizing technique where they walk through a familiar place and assign numbers to landmarks. And to recall numbers they walk the route again in their head and "read" the numbers off the landmarks. This is the technique those freaks that can recite thousands and thousand of decimals of Pi use. In effect the scroll bar does the same for me. It's my landmark and I assign topics to its position which allows me to remember better. If I want to quickly re-read something weeks later I can open the document and within seconds get there just by scroll bar position. And one could say search would work here too, but often times it does not because I don't remember exactly the string I want to find in the document (and some documents are not searchable). Once I upgraded to Mountain Lion from Snow Leopard, I found the default scroll bar setting extremely bothersome and my read content retention much much lower until I put the scroll bars back. So another anecdotal reason why dynamically showing/hiding UI elements is usually a bad idea.
- minikites 13y agoI agree for plain documents, but tons of online articles list comments on the same page, so the scroll bar is almost a negative incentive to keep reading. "I've read this much of the article and I'm only 1/20th of the way down?" [user stops reading, unaware that there's 450 comments and the article is actually pretty short]
- Corvus 13y agoI think comments themselves are the “negative incentive”, not the scroll bar. If comments were as informative and well-written as the article, then including them in the total article length is what you want because you would also want to read them. But, as we all know, comments are usually total garbage. The problem is not that they get included in the scroll bar, but that they get included with the article. We need to fix, or remove comments, not scroll bars.
- nsxwolf 13y agoI use the default scroll bars setting in OS X (Show scrollbars automatically based on mouse or trackpad movement), and I'm never not aware of the page length. I see it whenever I switch tabs, and I see it whenever I start to scroll. I always have an idea of how long the page is and I don't need a constant reminder of it. It's not like it's a precision instrument anyway - who can precisely gauge the length of an article based on scroll bar length and current window size? Rain Man? I can switch back to the always-on behavior if I want to, but I haven't wanted to.
- ronaldx 13y agoAgreed! OS X users can choose when to show a scrollbar: it's one of the 'General' system preferences. Reimplementing the scrollbar for users who have not taken the option to show the scrollbar is deliberately going against their stated preference.
- Semaphor 13y ago> Reimplementing the scrollbar for users who have not taken the option to show the scrollbar is deliberately going against their stated preference. While in general I agree with your post, I think saying it goes "against their stated preferences" is a bit strong considering that (from what I've read here) not showing the scrollbar is the default. In my experience many people never change the defaults.
- mattstocum 13y agoEspecially since NiceScroll isn't very nice. The scrolling is jerky. Leave the OS defaults for scrolling. On OS X, there is an option to keep the scrollbar always visible, and the OS itself decides to do this if you don't have an input device capable of scrolling. Some janky 3rd party scroll library isn't going to know any of this information.
- Semaphor 13y ago> Especially since NiceScroll isn't very nice. The scrolling is jerky. Interesting, on what devices? We are using NiceScroll for a widget right now and it's very smooth, even on my Nexus 4.
- mattstocum 13y agoOn my MacBook Pro it's bad. The scrolling is jerky and doesn't feel right, like there's too much inertia and too much momentum, and you can't stop it once it's scrolling. On iOS there is to little momentum. There's also no point in it. Safari already scrolls web pages, why re-implement it in javascript? You're also losing new features OS X 10.9 does under the hood, like pre-rendering off-screen content to enable smooth 60fps scrolling. Let the OS do its job.
- comex 13y agoYep. It's not enough to maintain 60fps (which, even in 2013, isn't always possible); if you don't want scrolling through a large amount of content to feel weird and unnatural, you really should copy the native acceleration curve, something which I have yet to see done for iOS (even Apple's own JavaScript has screwed this up). Since iOS at least has supported -webkit-overflow-scrolling: touch for years now, there's usually no point.
- Semaphor 13y agoThere is a point of it as inline native scrollbars in a rather small box look absolutely horrible.
- zalew 13y agoHave you tried 'position: fixed' on mobile? Position fixed support is a mess across mobile webkit browsers, and last time I checked the most bulletproof way to implement it was still to put the content in a scrollable container - that's the point of jquery libs like iscroll/nicescroll that try to emulate native scrollbars.
- sitharus 13y agoCompletely agree. I constantly have this fight with designers, disappearing scrollbars may not be (and I don't think it is) the best experience, but it is the system experience. It's far easier to explain to a casual user that on OS X you have to touch the trackpad to see the scroll position in all apps rather then "except that app that uses its own scrollbars that don't quite work right".
- zobzu 13y agoAs unpopular as it might be I think he's got a point about this too. it's just that it's not very clearly articulated. At the end of the day, customers and others browsing your site are unlikely to understand why there's no visual indication on their mac, and why you didn't put one on your site.Sooo.. if you're forced to put a visual indicator, at the very least least, make it vertical for page scrolling. (and also, thanks for nothing, Apple UI)
- drzaiusapelord 13y agoThey either need to learn how to use their macs or switch to Windows. Fixing ignorant OSX users expectations isn't and shouldn't be a webdev's problem.
- Yaggo 13y agoTotally agree. Here the author (of the original post) contradicts himself. Users of OS X have chosen to use a UI with tiny hiding scrollbars and likely are accustomed for that. Let the browser natively handle the scrollbars, any custom hack may cause usability/technical/performance problems on certain platforms sooner or later.