[HN Gopher] Kill-sticky, a bookmarklet to remove sticky elements...
       ___________________________________________________________________
        
       Kill-sticky, a bookmarklet to remove sticky elements and restore
       scrolling
        
       Author : ivank
       Score  : 197 points
       Date   : 2022-09-27 17:05 UTC (5 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | bauble wrote:
       | I used that for a while, but I was using it so often that I
       | installed https://addons.mozilla.org/en-
       | US/firefox/addon/alwayskillsti.... Sometimes I see things flicker
       | briefly into view and I'm reminded that it's working. I've had to
       | whitelist several sites that I use regularly, but it's pretty low
       | maintenance after that.
        
       | cercatrova wrote:
       | I use this often. However I sometimes want the sticky part to
       | stay where it initially rendered on the page, like a nav bar.
       | Perhaps I don't know enough CSS but anyone know how I can do
       | that?
        
         | redweer wrote:
         | replace `position: sticky` with `position: relative`
        
         | dekatron wrote:
         | Just replace the `node.parentNode.removeChild(node);` line with
         | `node.style['position'] = 'static';`.
         | 
         | With this, you can 'un-sticky' the element instead of removing
         | it.
         | 
         | Here's the URL-encoded bookmarklet code with the above change:
         | javascript:(function()%7Bdocument.querySelectorAll('body%20*').
         | forEach(function(node)%20%7Bif%20(%5B'fixed'%2C%20'sticky'%5D.i
         | ncludes(getComputedStyle(node).position))%20%20%7Bnode.style%5B
         | 'position'%5D%20%3D%20'static'%3B%7D%7D)%3Bdocument.querySelect
         | orAll('html%20*').forEach(function(node)%20%7Bvar%20s%20%3D%20g
         | etComputedStyle(node)%3Bif%20('hidden'%20%3D%3D%3D%20s%5B'overf
         | low'%5D)%20%7B%20node.style%5B'overflow'%5D%20%3D%20'visible'%3
         | B%20%7Dif%20('hidden'%20%3D%3D%3D%20s%5B'overflow-x'%5D)%20%7B%
         | 20node.style%5B'overflow-x'%5D%20%3D%20'visible'%3B%20%7Dif%20(
         | 'hidden'%20%3D%3D%3D%20s%5B'overflow-y'%5D)%20%7B%20node.style%
         | 5B'overflow-y'%5D%20%3D%20'visible'%3B%20%7D%7D)%3Bvar%20htmlNo
         | de%20%3D%20document.querySelector('html')%3BhtmlNode.style%5B'o
         | verflow'%5D%20%3D%20'visible'%3BhtmlNode.style%5B'overflow-x'%5
         | D%20%3D%20'visible'%3BhtmlNode.style%5B'overflow-y'%5D%20%3D%20
         | 'visible'%7D)()
        
         | Avery3R wrote:
         | There's static ding that'll make turn the sticky/floating
         | elements into normal ones
         | 
         | https://www.staticding.org/
         | 
         | it does put a little overlay telling you how many elements it
         | adjusted, but you can remove that with a couple modified lines
         | in the source.
        
       | aendruk wrote:
       | Reminder that you can also configure persistent rules to do this
       | with your favorite wide-spectrum blocker:
       | example.com###annoying-header:style(position: unset !important)
       | example.com##.restrictive-box:style(overflow: unset !important)
        
         | BrianOnHN wrote:
         | > your favorite wide-spectrum blocker
         | 
         | Sunscreen?
         | 
         | Bookmarklets are underutilized.
         | 
         | They can even be utilized to automate simple tasks that I used
         | to use INSERT MACRO PROGRAM NAME to do.
         | 
         | The downside is lack of mobile availability.
        
       | _V_ wrote:
       | Honestly I have uBlock set in a way that blocks most of this
       | stuff by default. I have several "steps" of permissivity:
       | 
       | 1) (default) block all JS completely
       | 
       | 2) Block 3rd party js
       | 
       | 3) Permit all js (rare)
       | 
       | If the web fails to render in (1) and I do not necessarily need
       | anything on that web I can get elsewhere, I just leave the web. F
       | that web and F that creator. If I have to (webshop etc) I usualy
       | just enable (2) which works most of the time. (3) is basically
       | only for special webs like banking etc which is just PITA to
       | debug as you have to be logging in constantly etc.
       | 
       | Websites today are just full of unnecessary crap and are
       | downright unusable when on slower connection like 3G. Most of the
       | webs now require your browser to download 2M of JS to have "slide
       | out menus" or some other stupid stuff. uBlock is a must, because
       | without that you will run out of data plan almost instantly.
       | 
       | And to make things worse, Chromium-based browsers will make
       | adblocking much harder with Manifest v3. As soon as this happens,
       | I will go to Firefox. And after that probably Links
       | (unironically).
       | 
       | Btw spinning up a docker to shrink 1 JS function to a oneliner is
       | perfectly capturing the essence of what's wrong with web nowdays
       | :-D
        
       | acabal wrote:
       | I use this all the time, it's invaluable. I also use it to remove
       | sticky headers, which I find to be deeply annoying because they
       | waste space and often break keyboard scrolling by scrolling the
       | next few lines of text under the header.
       | 
       | In Firefox I've assigned it a keyword shortcut, so I can type
       | `ctrl + l` to select the address bar, then `ks` `<enter>` to
       | execute the JS without having to click.
        
         | krick wrote:
         | Thanks for the keyword tip, IDK why I never used it.
        
         | jakzurr wrote:
         | Same. Showed my sister, and we've both been using for about a
         | year. Works more often than not. (OMG what a relief.)
        
       | autoexec wrote:
       | I use an addon called "nuke anything" that lets you right click
       | and remove pretty much anything (only until the page is
       | reloaded). It's a lifesaver when you browse with JS disabled
       | since that can cause pages to display poorly (menus spewed all
       | over the screen for example) but it comes in handy a lot for
       | sticky elements. I have seen a few sites that manage to prevent
       | certain things from being selected though. It's nice to have yet
       | another tool to fall back on if I need it.
        
         | axiolite wrote:
         | uBlock Origin includes an "element picker" which allows
         | blocking elements (permanently), this almost eliminates the
         | need for Nuke Anything.
        
           | autoexec wrote:
           | Yeah, I put that to work a lot too, but nuke anything is
           | great for sites you're probably not going to visit more than
           | once since it doesn't clutter up your filter list just to get
           | something out of your way (I'll even remove images or menus
           | if they're distracting me from content while reading). If I
           | do add a random one off website to uBO it's usually because
           | they did something really obnoxious and I was like "Never
           | again!"
        
           | nocman wrote:
           | Except for elements that change enough between page loads
           | that it can't recognize them as the same content (which
           | happens far too often).
        
       | ARandomerDude wrote:
       | I kill sticky elements with the back button. If a site wants to
       | hassle me, I won't give them attention or ad money.
        
         | thih9 wrote:
         | What sites do you visit that don't have sticky elements?
         | 
         | I'm curious because I'd love to visit sites like these too.
         | Meanwhile most social media, blogs, news sites and probably
         | most HN submissions too have some.
        
           | thehappypm wrote:
           | This web site
        
       | bsimpson wrote:
       | It's wild that you have to set up Docker to contribute to 600
       | characters of JavaScript.
       | 
       | It's like building a robot to pass the butter.
        
         | krick wrote:
         | You don't really have to. It's just minification and stuff,
         | just a build step, I suppose the owner could do that as well,
         | if your contribution has any value, but you didn't do it
         | properly. Do you know a better way to build/minify js? Perhaps
         | you have all these npm packages installed on your PC already? I
         | don't, and I don't want to. If Dockerfile wasn't included I'd
         | have to make my own just to run any fucking build-tools it
         | requires to make a bookmarklet (which I most likely wouldn't
         | bother to do). And, yeah, it requires them, this is not some
         | optional stuff that author did just to be fancy.
         | 
         | You could set up some CI to make automatic builds after merging
         | to master, but that still wouldn't solve the problem of
         | contributor wanting to test what he wrote.
        
           | bsimpson wrote:
           | I've never used Docker (nor make). From the outside, it feels
           | like some heavy VM thing for building isolated systems in the
           | cloud. It's not something I'm used to seeing in the client-
           | side ecosystem.
           | 
           | I just took a second look at the repo, and realized there's
           | no package.json. Typically, an open-source JavaScript project
           | would have one. It would enumerate the dependencies and how
           | they work together to generate the final output.
           | 
           | As a JavaScript contributor, I expect to be able to type
           | yarn         yarn run build
           | 
           | into any repo to generate the output (and test any changes
           | I've made).
           | 
           | I suspect the interactive web is not the author's primary
           | platform. That's fine - it's his project; he can structure it
           | however he wants. I was just surprised to see an unfamiliar,
           | nontrivial dependency to concatenate a handful of lines into
           | a bookmarklet.
           | 
           | Since you asked "Do you know a better way?" you can port the
           | `npm install` line to a dictionary of dependencies in
           | package.json. You can use wireit in that same file to chain
           | the CLIs together, accomplishing what's currently the
           | ENTRYPOINT line in Dockerfile.
           | 
           | It does the same thing that the current setup does, but it
           | follows the conventions of the ecosystem. This makes it more
           | available to external contributors, because they don't have
           | to learn/install tools like Docker that aren't typically seen
           | in JS.
        
             | flatiron wrote:
             | https://github.com/t-mart/kill-
             | sticky/blob/master/Dockerfile
             | 
             | I'm reality it's just using node. But removed the
             | requirement to set node up.
        
               | bsimpson wrote:
               | Switched the requirement to setting Docker up.
               | 
               | Just depends on what you expect your contributors to be
               | more familiar/comfortable/ready for. For most JS
               | projects, package.json is the expected onramp for new
               | contributors. We all have node installed.
        
       | szhu wrote:
       | Similar thing I made recently, but as a Chrome extension:
       | 
       | https://github.com/szhu/pagefreeze
       | 
       | It does the same thing, and in addition also prevents any async
       | JS from running. It also can be easily toggled per-site; just
       | click the extension icon! Unfortunately I didn't have time to put
       | a GIF in the README. OP did a better job of explaining what their
       | project does!
       | 
       | Would love feedback on it + hope it helps someone as well!
        
         | darepublic wrote:
         | You override window.addEventListener? At that point I think you
         | may as well just use nojs
        
       | curlftpfs wrote:
       | > Set the style of the html node for overflow: auto
       | 
       | I have a custom style to do this for ALL sites, warning:
       | 
       | 1. it can break websites in unexpected ways
       | 
       | 2. There's often a class on the <body> hiding overflow that needs
       | to be overwritten instead/as well
        
       | Night_Thastus wrote:
       | Fantastic. Making the web a less awful place, one workaround at a
       | time. You've got my bookmark.
       | 
       | Now, make an auto-detect for this and stick it into something
       | like uBlockOrigin and we're golden. :)
        
       | [deleted]
        
       | sillysaurusx wrote:
       | Is there a way to do this on mobile? Probably not an easy one,
       | but if mobile Safari had an extension, I'd install it
       | immediately.
       | 
       | The worst is when you use the top edge of the screen to read, but
       | the site has a navbar that only shows up when you scroll up. So
       | if you scroll slowly upwards, the navbar creeps slowly downwards,
       | and keeps hiding the text you're trying to read. Thankfully such
       | design choices seem to be getting rarer.
       | 
       | Do sticky headers measurably increase conversion rates, or is it
       | a fad? If there's data to support why people keep making this
       | decision, I guess I could be persuaded to feel that it's not a
       | case of "Everyone likes to do it their way, and you like your
       | way."
        
         | joosters wrote:
         | You can add it to a bookmark/favourites, then just tapping on
         | it from the favourites page will work as expected. It works
         | pretty well in Safari.
        
         | aaaaaaaaaaab wrote:
         | Via Shortcuts: https://imgur.com/a/FRy12rp
        
         | happyopossum wrote:
         | I've been using this bookmarklet on mobile safari for 3-4
         | years...
         | 
         |  _edit - just looked up the DF post I found out about it from,
         | and it's been 5.something years_
         | 
         | [0] https://daringfireball.net/linked/2017/06/27/mcdiarmid-
         | stick...
        
         | tobr wrote:
         | Bookmarklets work fine on iOS Safari last time I checked. You
         | have to add a bookmark for some random page, then go back in
         | and edit it, though.
        
           | vmoore wrote:
           | > Bookmarklets work fine on iOS Safari
           | 
           | Does the bookmarklet get executed for the current open tab?
        
             | happyopossum wrote:
             | Yup
        
           | happyopossum wrote:
           | It's a bit easier to set it up on desktop safari and let
           | iCloud sync it over for you...
        
       | marcodiego wrote:
       | I have this addon: https://addons.mozilla.org/en-
       | US/firefox/addon/kill-sticky/ installed on Firefox. Use it more
       | than I'd like.
        
       | fisherjeff wrote:
       | Ha, wow, I wrote my own (much less fancy) bookmarklet that does
       | this and also called it Kill Sticky:
       | 
       | javascript:for(e%20of%20document.querySelectorAll(%22body%20*%22)
       | )%7Bp=getComputedStyle(e).position;if((p===%22fixed%22)%7C%7C(~p.
       | indexOf(%22sticky%22)))e.parentNode.removeChild(e);%7D
        
         | rasz wrote:
         | mine kept growing every time I stumbled on a page with new
         | hostile sticky situation:
         | 
         | javascript:(function(){void([].forEach.call(document.querySelec
         | torAll('body *'),e=>/fixed|sticky/.test(getComputedStyle(e).pos
         | ition)&&e.parentNode.removeChild(e)));document.body.style =
         | 'overflow:auto !important; height:100% !important;';document.bo
         | dy.removeAttribute("class");document.firstElementChild.removeAt
         | tribute("style");document.firstElementChild.removeAttribute("cl
         | ass")})()
        
       | sp332 wrote:
       | Is there something that will prevent Medium pages from scrolling
       | to the top when you reload the page?
        
       | alphabet9000 wrote:
       | i wish there was a way, with CSS only, to specifically target
       | existing css rules, and have one rule change to another rule,
       | globally. for instance, something like: [position:fixed] {
       | position:relative }. i.e. that is different than * {
       | position:relative }, because it doesn't apply position:relative
       | to everything, it only changes position:fixed to
       | position:relative.
        
       | karaterobot wrote:
       | I spent an afternoon trying to figure out how to detect when an
       | element had its display or transform properties changed when it
       | was also the full size of the screen. This was my proposed
       | heuristic for deciding when something was a full screen popup, in
       | the process of taking over your window. The idea would be to zap
       | these elements when they were triggered, so that you'd not have
       | to encounter them in the first place.
       | 
       | Cool story huh? Anyway, that never went anywhere, but I'd donate
       | to an open source project if a better programmer than me wanted
       | to take on this noble struggle.
        
       | ryanianian wrote:
       | Browsers were able to fight window.open popups back in the day by
       | intercepting/blocking the window.open API. This was, iirc, one of
       | the killer features of firefox back in the day. But cat and
       | mouse: websites are now abusing CSS to recreate the popup
       | experience.
       | 
       | Bookmarklets like this are helpful (and this is a great
       | successor), but bookmarklets are very difficult to install and
       | use for the average internet user. I could not figure out how to
       | install this on my iPhone without using desktop Safari to sync
       | bookmarks.
       | 
       | Is there any hope of browsers being able to combat popup modals
       | and other sticky gross things in an automated (and on by default)
       | way that doesn't totally break sites that require sticky items
       | for navigation or other, non-hostile features?
        
         | farisjarrah wrote:
         | You can add this on iphone by adding another webpage as a
         | bookmark using the share menu in safari and then going back and
         | editing the bookmark so its what you want it to be.
        
         | aaaaaaaaaaab wrote:
         | One way or another, the endgame is going to be websites which
         | are nothing but a fullscreen WebGL canvas driven by
         | webassembly.
         | 
         | Things will steadily devolve for users from that point.
         | 
         | Then we'll need about ten years for the next generation of
         | hypermedia to surface, which hopefully won't have Turing-
         | complete scripting _on principle_. But I'm not sure whether
         | developers are smart enough to avoid repeating the same
         | mistakes again and again...
        
           | aendruk wrote:
           | That may just be the day I stop using the web. I can picture
           | it now: Me, neo-luddite, weathered and bitter, strung between
           | the maw of capitalism and the precious tranquility of my
           | crafted world.
        
             | kevin_thibedeau wrote:
             | At least you'll be safe from the blipverts.
        
           | postalrat wrote:
           | Why a canvas with webassembly? Just a single video element
           | with everything rendered on the server gives them the most
           | control.
        
             | aaaaaaaaaaab wrote:
             | Stadia and GeForce Now already does this.
             | 
             | But I don't think this will be the business model of the
             | Web at large. Server costs would be too high. Webassembly
             | blobs with WebGL gives you the sweet spot by offloading the
             | compute cost to the user while stripping them practically
             | all of their freedoms.
        
         | aendruk wrote:
         | There's a motion to add first class support for in-page popups.
         | Ironically that could take us back to the good old days of
         | having a consistent target to block.
         | 
         | https://news.ycombinator.com/item?id=32599583
        
       | axiolite wrote:
       | Unfortunately, bookmarklets don't work on Firefox mobile.
       | Fortunately however, the "Hide Fixed Elements" and "Scroll
       | Everywhere" add-ons _do_ work on mobile:
       | 
       | https://addons.mozilla.org/en-US/firefox/addon/hide-fixed-el...
       | 
       | https://addons.mozilla.org/en-US/firefox/addon/scroll-everyw...
       | 
       | That is, if you jump through the hoops to make more than the
       | default 8 add-ons available on Firefox mobile:
       | 
       | https://blog.mozilla.org/addons/2020/09/29/expanded-extensio...
        
         | coronasaurus wrote:
         | Yeah they do, add it as a bookmark and launch from address bar.
         | I do it on Firefox for Android and Bromite all the time.
        
       | vlunkr wrote:
       | Sticky positioning on mobile devices is rarely a good experience.
       | (Though it might be my tiny phone screen.) I would love for it to
       | get special treatment on mobile so it could always be dismissed
       | or something.
        
       | userbinator wrote:
       | I seriously don't understand why some people seem to like
       | position:sticky so much. It's really offensive when the element
       | I'm trying to scroll out of the way refuses to leave and clings
       | to the edge, almost mockingly.
       | 
       | I've had a "replace sticky with relative" filter in my MITM proxy
       | since the day that CSS misfeature showed up in browsers.
        
         | retcore wrote:
         | I'm convinced that position:sticky wouldn't exist if browsers
         | weren't beholden to advertising traffic. Someone needs to
         | create a rival foundation to Mozilla, with some advertising and
         | transaction processing chops, figure out how to sustain enough
         | revenue to tax deduct enough smart promotion, and ideally, I'd
         | personally wish, fork Pale Moon.
         | 
         | The German Zugabeverordnung law was very strict against any
         | "free" commercial offer tied to the obscuring of linked
         | purchases. But instead of being extended to embrace the
         | creation of sponsored funnels providing free entertainment
         | websites, as is probably now long forgotten but fallacious
         | doctrine, the internet instead made "free", "free".
         | 
         | https://marketinglaw.osborneclarke.com/marketing-techniques/...
         | 
         | https://competition-attorneys.de/lawyer/zugabeverordnung-ger...
         | 
         | The law was scrapped in 2004, unlikely [ed] not [/ed]
         | coincidentally with establishing peak web commercial
         | libertarian lobbying, the more political and in earnest post
         | dotbomb.
        
         | deergomoo wrote:
         | position: sticky; makes tons of sense for web apps. It's very
         | common to want toolbars or menus always visible. I don't think
         | anyone in their right mind would claim that, for example, MS
         | Word would be better if you needed to scroll to the top of the
         | document to see any of the controls.
        
       | vmoore wrote:
       | You could pass this code into Tampermonkey/Violentmonkey[0] and
       | use it globally on every domain.
       | 
       | [0] https://violentmonkey.github.io/
        
       | ryandrake wrote:
       | I feel I'm getting close to the point where I'm just going to
       | start disabling CSS and JS for normal web browsing, only
       | whitelisting certain sites that 1. I have to use and 2. Simply
       | don't work at all without CSS/JS. IMO browsers have abandoned
       | their role as the "user's agent" and handed over entirely too
       | much control over style, presentation and function to web
       | developers. The fact that you need plugins, extensions, adblocks,
       | bookmarklets, and so on, just to regain this control should be
       | troubling but I guess progress has to march on.
       | 
       | I know I'm in the tiny minority here and firmly in the "yelling
       | at the clouds" territory, but I really wish we could go back to
       | the simpler times of the web being hyperTEXT documents linked
       | together and that's it.
        
         | userbinator wrote:
         | I use JS whitelisting but haven't gotten to the point of CSS
         | off by default yet; I suppose on the majority of sites I come
         | across, the CSS hasn't been bad enough to warrant it.
        
         | nnmg wrote:
         | You're not alone, I use noscript on firefox for exactly that.
         | It makes some websites unusable, but for normal browsing,
         | that's what I use. If the website is unusable after allowing a
         | few scripts, then I don't want to be there. It is horrifying
         | when you see how much JS some websites try to pull in.
        
         | zajio1am wrote:
         | I am already doing that (with NoScript), since browsers started
         | supporting video, but not supporting reliable way to stop
         | autoplay.
         | 
         | OTOH, i see why things like adblocking is extension. That makes
         | browser neutral with regard to content, while different plugins
         | can bring different policies.
        
           | kevin_thibedeau wrote:
           | Firefox has about:config settings to disable autoplay.
        
           | musicale wrote:
           | > video, but not supporting reliable way to stop autoplay
           | 
           | It's an almost incredible situation. Firefox and Safari have
           | a setting to stop autoplay, but much of the time it doesn't
           | actually work, and Chrome doesn't even seem to have a
           | setting.
           | 
           | It's also amazing how when enough users decide that they hate
           | some obnoxious web site behavior (pop-up windows, autoplaying
           | video, etc.) enough to block it, the web site designer's
           | response isn't "maybe we should be less obnoxious" but "how
           | can we circumvent the user's preferences?"
        
             | permo-w wrote:
             | user not customer
        
           | mrguyorama wrote:
           | Firefox has never failed to stop autoplay for me. I don't
           | have it set to stop all autoplay, because I watch an extreme
           | amount of Youtube, but any tab that opens in the background
           | or isn't focused has never failed to "Autoplay Blocked"
        
         | marginalia_nu wrote:
         | Might wanna check out the gemini protocol[1]. Although while
         | it's a nice place to visit, it I think it takes it a bit too
         | far in the other direction.
         | 
         | [1] https://gemini.circumlunar.space/
        
           | dopidopHN wrote:
           | Yeah I thought of those guys while reading this comment
           | section.
           | 
           | Gemini site and hubs do have a didactic to flavor; not that
           | different from the old web.
           | 
           | Except the old web was yearning for more bell and whistle.
           | Dynamic element. Gemini made anything not text illegal
        
         | coldpie wrote:
         | Just use NoScript. It's designed for exactly that, and it's
         | great. Permanently allowlist the sites you use frequently,
         | temporarily allowlist stuff as needed until the site starts
         | working. It sucks, but leagues it's better than the unfiltered
         | web.
        
         | permo-w wrote:
         | slightly unrelated, but what I would really like would be the
         | ability to block google's cookies on every website except
         | google. I do not want them tracking me across the web, but they
         | make their site unusable if you block cookies. I tried using
         | different search engines, but was less than impressed by any of
         | them
        
         | hrbf wrote:
         | Many "content" sites are so annoying to use now that I almost
         | reflexively click the "Reader" view and/or save it to
         | Instapaper. If that doesn't work, I abandon the site.
        
           | bityard wrote:
           | Developers: I would pay for a firefox or chrome extension
           | that lets you just toggle the whole browsing session or tab
           | into reader mode
        
             | rpgbr wrote:
             | I'm not sure about Firefox, but Safari let's you set reader
             | mode as default for a domain -- and since Safari 16, this
             | setting is synced to all your devices.
        
             | masukomi wrote:
             | I've regularly wished for a browser that was "reader mode"
             | by default, and had a button for "unreadable mode"
        
               | permo-w wrote:
               | I have reader mode on by default in Brave, but it doesn't
               | always work and (at least sometimes) doesn't display
               | images from the article. reader mode is extremely non-
               | trivial to implement
        
             | spicybright wrote:
             | If it can be seamless, as in I don't have to see each page
             | half-rendering before switching to reading mode, I'd
             | definitely throw money at it.
        
         | peanut_worm wrote:
         | Seems kind of pointless. Browsers are basically just virtual
         | machines that run web applications at this point. I can't even
         | think of any plain text and image websites besides my own.
        
           | dotancohen wrote:
           | > I can't even think of any plain text and       > image
           | websites besides my own.
           | 
           | Ycombinator has a great news aggregation website that is text
           | only. You can find a link to it from the top of this page.
        
           | marginalia_nu wrote:
           | There are plenty, you're using the wrong navigational tools
           | ;-)
        
           | sefrost wrote:
           | Hacker News?
        
           | krick wrote:
           | Exactly. I never understood all these "I don't enable js"
           | comments. You kinda usually don't need to disable js on sites
           | that are _usable_ without js. And if you feel the urge to
           | disable it, it is most likely that without js it 's an empty
           | page anyway.
        
       | joosters wrote:
       | This is my most useful bookmark, I use it everywhere (it's even
       | practical on an iphone)
       | 
       | So many sites have a top banner that disappears as you scroll
       | down a page, but as soon as you scroll upwards even a little bit,
       | it pops up again. This is immensely frustrating because I tend to
       | read at the top of a page and scroll down as I'm reading. So if I
       | scroll down slightly too far and then correct myself, the banner
       | will instantly obscure the bit of the text I'm trying to read.
       | It's very satisfying to be able to click on the bookmark and fix
       | the site's crap design!
        
         | svnpenn wrote:
         | Yes, yes, yes! I am so sick of sites putting fixed top bar, and
         | fixed side bars as well. Add "clever" bar animation in as well,
         | and you get the awful UX we have today. Classic case of people
         | inventing a problem to solve.
        
           | Kerrick wrote:
           | It's not just the awful UX of today. It's the awful UX of
           | yesteryear, except this time it's the website owner's fault.
           | https://i.stack.imgur.com/pOAAU.jpg
        
           | darepublic wrote:
           | For some ui, fixed sidebar is fine imo. The headers that
           | scroll down with you, on the other hand, can go extinct
        
         | ravenstine wrote:
         | One of the banes of my existence! There's no place for these
         | stupid effing banners when browsers have inertia scrolling and
         | infinite-scrolling sites have fixed headers (or footers)
         | visible all the time. Maybe I wouldn't be so frustrated if the
         | tolerance for what makes a header reappear wasn't ~3px, which
         | is what I often perceive it to be. It totally misunderstands
         | human behavior, which isn't to read an article word by word all
         | the way through like a robot but to reread things to better
         | comprehend them and jump around an article to make sense of
         | connected ideas.
        
       ___________________________________________________________________
       (page generated 2022-09-27 23:00 UTC)