←back to thread

569 points todsacerdoti | 9 comments | | HN request time: 0.362s | source | bottom
Show context
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 #
1. 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 #
2. 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.

3. 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 #
4. ryandrake ◴[] No.42603022[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 #
5. kerkeslager ◴[] No.42607714{3}[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.

6. 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.

7. 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 #
8. carlosjobim ◴[] No.42610001{3}[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.

9. kerkeslager ◴[] No.42622628[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).