Most active commenters
  • kerkeslager(3)
  • wruza(3)

←back to thread

569 points todsacerdoti | 37 comments | | HN request time: 0.003s | source | bottom
1. hackingonempty ◴[] No.42599363[source]
> I don't keep a "dick bar" that sticks to the top of the page to remind you which site you're on.

I use an extension called "Bar Breaker" that hides these when you scroll away from the top/bottom of the page.[0] More people should know about it.

[0] https://addons.mozilla.org/en-US/firefox/addon/bar-breaker/

replies(4): >>42599387 #>>42599547 #>>42599856 #>>42601324 #
2. xp84 ◴[] No.42599387[source]
Nice. This may be my pet peeve on the modern internet. Nearly EVERY site has a dick bar, and the reason I care is it breaks scrolling with spacebar, which is THE most comfortable way to read long content, it scrolls you a screen at a time. But a dickbar obscures the first 1 to…10? lines of the content, so you have to scroll back up. The only thing worse than the dickbar is the dickbar that appears and disappears depending on last direction scrolled, so that each move of the scrolling mechanism changes the viewport size. A pox on them all.
replies(5): >>42599396 #>>42599602 #>>42600237 #>>42600262 #>>42605364 #
3. nayuki ◴[] No.42599396[source]
> Nearly EVERY site has a dick bar, and the reason I care is

that when reading on my laptop screen, it takes up valuable vertical space on a small display that is in landscape mode. I want to use my screen's real estate to read the freaking content, not look at your stupid branding bar.

And I don't need any on-page assistance to jump back to the top of the page and/or find the navigation. I have a "Home" key on my keyboard and use it frequently.

replies(1): >>42601273 #
4. imoreno ◴[] No.42599547[source]
It's annoying that every time "they" come up with a new antipattern, "we" have to add yet another extension to the list of mandatory things for each browser. And it also promotes browser monopoly because extensions get ported slowly to non-mainstream browsers.

It would be better to have a single extension like uBlock origin to handle the browser compatibility, and then release the countermeasures through that. In fact, ublock already has "Annoyances" lists for things like cookie banners, but I don't think it includes the dick bar unfortunately.

Incidentally, these bars are always on sites where the navbar takes 10% vertical space, cookie banner (full width of course) takes another 30% at the bottom, their text is overspaced and oversized, the left/right margins are huge so the text is like 50% of the width... Don't these people ever look at their own site? With many of these, I'm so confused how anyone could look at it and say it's good to go.

replies(3): >>42599918 #>>42599921 #>>42600247 #
5. robertoandred ◴[] No.42599602[source]
Note to web devs: use scroll-padding to fix this: https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-padd...
replies(2): >>42600183 #>>42607396 #
6. kerkeslager ◴[] No.42599856[source]
I am usually the first old man to yell at any cloud, and I was overjoyed when someone invented the word "enshittening" for me to describe how the internet has gotten, but it surprised me a bit that people found that one annoying. I can see the problem of it sticking the top of the page with a logo (which is basically an ad and I hate those), but they usually have a menu there, so I always thought of them a bit like the toolbar at the top of an application window in a native desktop application. FWIW when I've built those, I've always de-emphasized the branding and focused on making the menus obvious and accessible.

I'm happy to learn something new about other people's preferences, though. If people prefer scrolling to the top, so be it!

EDIT: It occurs to me that this could be a preference setting. A few of the websites that have let me have my way, I've started generating CSS from a Django template and adding configuration options to let users set variables like colors--with really positive feedback from disabled users. At a fundamental level, I think the solution to accessibility is often configurability, because people with different disabilities often need different, mutually incompatible accommodations.

replies(4): >>42600028 #>>42600788 #>>42607831 #>>42608132 #
7. wilkystyle ◴[] No.42599918[source]
It's not a silver bullet, but I do the following with uBlock Origin:

1. JS disabled by default, only enabled on sites I choose

2. Filter to fix sites that mess with scrolling:

    ##html:style(scroll-behavior: auto !important;)
3. Filters for dick bars and other floating elements:

    ##*:matches-css(position:fixed)

    ##*:matches-css(position:sticky)
replies(1): >>42610840 #
8. teddyh ◴[] No.42599921[source]
The president was very insistent that we show popup ads at six different points in time, until he got home and got six popup ads, and said, “You know what? Maybe just two popups.”

— Joel Spolsky, What is the Work of Dogs in this Country? (2001): <https://www.joelonsoftware.com/2001/05/05/what-is-the-work-o...>

replies(1): >>42600676 #
9. kalensh ◴[] No.42600028[source]
Another thing to check for with sticky headers is how it behaves when the page is zoomed. Often, the header increased in size proportionately, which can shrink down the effective reading area quite a bit. Add in the frequent sticky chat button at the bottom, and users may be left with not a lot of screen to read text in.

There can be a logic to keeping the header at the top like a menu bar, and I applaud you if you take an approach that focuses on value to the user. Though I'd still say most sites that use this approach, don't have a strong need for it, nor do they consider smaller viewports except for portrait mobile.

Configuration is great, though it quickly runs into discoverability issues. However it is the only way to solve some things - like you pointed out with colors. I know people who rely on high contrast colors and others that reduce contrast as much as they effectively can.

10. dredmorbius ◴[] No.42600183{3}[source]
No.

Just kill the fucking dickbar.

11. resonious ◴[] No.42600237[source]
Dick bar often breaks hash links as well. You click a link that scrolls you to a section, but you can't see the first few lines of it.
12. wruza ◴[] No.42600247[source]
Extensions are already there: ubo, stylebot. We just have to invent a way to share user-rule snippets across these. There will always be a gray zone between trusted adblock lists included by default and some preferential things.
replies(1): >>42608264 #
13. Doctor_Fegg ◴[] No.42600262[source]
IIRC (as a fellow spacebar aficionado) position:fixed breaks spacebar scrolling but position:sticky generally doesn’t.
14. threefour ◴[] No.42600676{3}[source]
The OP blames "various idiot web 'designers'" for problems, but in my 30 years of being a web designer I have yet to meet one designer that wants to cause these problems. It's usually people responsible for generating revenue.
replies(2): >>42600812 #>>42603004 #
15. st-keller ◴[] No.42600788[source]
This is exactly what CSS was designed for: allowing you to define your personal style preferences in your browser, applying them across all websites. The term ‘cascading’ reflects this purpose.

Unfortunately, the web today has strayed far from its original vision. Yet, we continue to rely on the foundational technologies that were created for that very vision.

replies(1): >>42603022 #
16. yakshaving_jgt ◴[] No.42600812{4}[source]
In my career of roughly half as long, I have met plenty. Although it’s also true that it’s often people higher up who are amused by design gimmicks.
17. oneeyedpigeon ◴[] No.42601273{3}[source]
TBF, many people don't have that Home key. I agree with you, though - there should be a better solution. At the very least, just have an optional "Top of page" toolbar button in your browser.
replies(2): >>42601573 #>>42609893 #
18. aembleton ◴[] No.42601324[source]
I just toggle reader mode. Gets rid of this and everything else annoying. For sites where that doesn't work, I zap the bar in uBO.
replies(1): >>42603550 #
19. P-Nuts ◴[] No.42601573{4}[source]
Ctrl+↑
replies(1): >>42601609 #
20. oneeyedpigeon ◴[] No.42601609{5}[source]
That's one option. On macOS, it's fn + Left. On Android, I'm not sure there's anything.
replies(2): >>42608268 #>>42608648 #
21. ryandrake ◴[] No.42603004{4}[source]
The web designers and developers are at the very least complicit. They are ultimately the ones typing in the code and hitting submit, so they at least must share the blame.
replies(1): >>42610471 #
22. ryandrake ◴[] No.42603022{3}[source]
IMO browsers are broadly dropping the ball and failing to be "the user's agent." Instead they are the agents of web developers, giving them the powers that users should have.

If browsers catered to their user's desires more than they cater to developers, the web wouldn't be so shitty.

replies(2): >>42607714 #>>42610001 #
23. niutech ◴[] No.42603550[source]
Brave has an excellent Speedreader mode.
24. philsnow ◴[] No.42605364[source]
I often scroll with the space bar instead of more modern contrivances like arrow keys, scroll wheels, trackpoints, or trackpads. Sites with these header bars always seem to scroll the entire viewport y size instead of (y - bar_height), so after I hit space I have to up-arrow some number of times to see the next line of text that should be visible but is hidden under the bar.
25. cwillu ◴[] No.42607396{3}[source]
NAK; stop doing stupid shit and then you don't need browser support to fix the things you break on a case-by-case basis.
26. kerkeslager ◴[] No.42607714{4}[source]
This is going to be an unpopular opinion, but I think the beginning of the end was the invention of JavaScript. Pulling down an unknown chunk of code from the internet and running it is malware. Even if browsers successfully sandbox the JS (a promise which they've failed to keep numerous times) it can do all sorts of stuff that doesn't serve me, like mine crypto (theft of resources) or display ads (adware).

The primary benefit of web applications is they don't lose your data. Not a single web application UI that exists provides as good a user experience as the native desktop applications that came before. A web where browsers provided their own UIs for various document types, and those document types could not modify their UIs in any way, period, would be a better web. You serve up the document, I get to control how it looks and behaves.

27. strken ◴[] No.42607831[source]
I prefer it because I read by scrolling down one line at a time. This means that when I want to go back and read the previous couple of lines, I have to scroll up. This shows a big stupid menu of unknown size and behaviour on top of the text I'm trying to re-read.

The biggest problem for me is the randomness between different sites. It's not a problem for Firefox to display a header when I scroll up, since I can predict its behaviour. My muscle memory adapts by scrolling up and then down again without conscious thought. It's a much bigger problem if every site shows its header slightly differently.

I think the key thing is that when I scroll up, 95% of the time I want to see the text up the page, and at most maaaaaaaybe 5% of the time I want to open the menu. This is especially true if I got to your website via a search engine. I don't give a damn what's hidden in your menu bar unless it's the checkout button for my shopping cart, and even then I'd prefer you use a footer for that.

28. cdrini ◴[] No.42608132[source]
I agree with a lot of the complaints on this article except I think like two, and this is one of them. I think a sticky header is incredibly useful, and they're not something new. Books have sticky headers! Every page of a book will generally list the title and author on the top of each page. I find it just a useful way to provide context and to help me remember who/what I'm reading. The colours/branding of the sticky header communicate that much better to me than the tiny text-only title/url of my browser. And the favicon like-wise doesn't contain enough details for me to latch onto it.

But for UX: (1) Keep it small and simple! It shouldn't be more than ~2 lines of text. (2) Make it CSS-only; if you have to use custom JS to achieve a certain effect, be ready to spend a LOT of time to get the details right, or it'll feel janky. (3) Use `scroll-padding` in the CSS to make sure links to sections/etc work correctly.

replies(1): >>42622628 #
29. Y_Y ◴[] No.42608264{3}[source]
> We just have to invent a way to share user-rule snippets across these

Like the User-Scripts of Greasemonkey?

https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/

replies(1): >>42608611 #
30. Y_Y ◴[] No.42608268{6}[source]
On Android I think the typical interaction if to "fling" the page downward which will rapidly scroll until you crash into the top. Seems adequate for all but the longest pages.
31. wruza ◴[] No.42608611{4}[source]
Yes.
32. wruza ◴[] No.42608648{6}[source]
Wasn’t it cmd-up on mac?
33. carlosjobim ◴[] No.42609893{4}[source]
On iPhone: Touch the top bar

On MacOS: Click the top part of the scroll bar

34. carlosjobim ◴[] No.42610001{4}[source]
They do and it's called "reader view".

Browsing without reader view enabled by default is like driving your car around with the hand brake engaged.

35. threefour ◴[] No.42610471{5}[source]
True, I'm just saying I don't think that's where the problems originate.

In my practice, I'll try a Jedi mind trick, e.g. "Trying to [state larger goal] makes a lot of sense. An even more effective way to do that is to [state alternate, non-toxic technique]."

36. kikokikokiko ◴[] No.42610840{3}[source]
To me, what gets rid of those annoying sticky bars that cover half the screen, is this rule:

##[class*="part of the name of the annoying class, generally sticky something"]

this rule is amazing to deal with those randomly generated class names

37. kerkeslager ◴[] No.42622628{3}[source]
> (2) Make it CSS-only; if you have to use custom JS to achieve a certain effect, be ready to spend a LOT of time to get the details right, or it'll feel janky.

I have built a handful of personal sites at this point with no JS, and it's really amazing what modern CSS can do. My favorite trick is using tabindex=0 and :focus-within to make dropdowns (using :focus doesn't handle submenus).