upvote
All buttons and links need to shift around for a good 10 seconds before the page settles.
reply
Adding to the list of random examples: DuckDuckGo's AI answer box shifts the entire page down once the text is done generating, which happens some unpredictable time after the page has finished loading. The size of the downward shift is somehow exactly enough to shift all results down by one, making me accidentally click on the link just above the one I wanted to click.
reply
I wish we had a UI paradigm where whatever is underneath your cursor is not allowed to change. If you hover a button, that button must remain right there for you to click, if you hover some text, it must remain there for you to select. Browser and OS-enforced, ideally.

We can debate the specifics, maybe it's only in effect for X seconds after you stop moving the cursor, maybe it creates a 100px diameter disk of stability, I don't know. Just let me interact with the stuff I see.

reply
Oh, that UI paradigm already exist. It's just that browser makers are too busy with things like webasm, webgpu, or allowing pages to launch location/notification popups at users, so they don't have time to fix fundamental flaws.
reply
I don't think it does? Popups are one thing, but the very possibility of dynamic content entails that stuff will shift on the page. Sometimes it's just the nature of the thing, like a chatroom or a notification stream -- it'll shift as new content arrives, which is what I want most of the time, but if I'm interacting with a message, that message shouldn't shift. I'd like a general solution to this. Does that exist?
reply
Devil's advocate, the worst-case scenario is really bad, and would probably be common: A random button your pointer is unintentionally hovering on stays put while the rest of the page wildly formats around it, super-janky UX.
reply
Yeah, it would need to be designed and tested carefully. Rather than formatting around things, I would probably be fine with something simple like overlaying the previous layout in a small disk area under the cursor. So if a button shifts down, you'd see it shift down, but there would be a copy of it still under your cursor, which would fade on its own after a short period.

Alternatively, we could disable clicking/selecting anything that wasn't visible for at least 200 or 300 ms at that location. So if you try to click on a button and it's shifted down or something pops up in front, and you end up clicking on that instead, your cursor would just blink red.

reply
As someone similarly frustrated by these UI shenanigans, I’m impressed with how well thought-through your idea is. It sounds reasonable! Probably not that hard to implement either. Could it be a mere vibe-coding session away from existence?
reply
The page of my bank's website (ABN AMRO) which shows an account's transactions does this in the worst way. It all loads perfectly, it shows the transactions, I move to click on one or the button for a new transfer, and boom a message gets loaded in at the top which shifts every fucking item on the page down 20 pixels or so.

The message is always something inane like 'markets go brrr¹', and it's never something I need at the moment on that page (or anywhere else). I can dismiss the message (hooray?) but it always comes back the next time, so that isn't actually helpful at all.

1: Obviously they use carefully blandified corporate bank language for those messages.

reply
This. My favorite is when I search for products on a website or app and the results appear in batches, with subsequent results interleaving with the previous results. So when you want to select a particular result and start to move your mouse and click, or move your finger and press, you often end up selecting something unintended because a later result pops into the location.
reply
I do this in the gmail mobile app all the time thanks to their ads injecting themselves in between the emails several seconds late. They must love me, their most engaged ad consumer.
reply
Handy tip: If you disable all the tab category things in settings and go down to a single category (Primary), it will stop showing you ads entirely.
reply
<sarc/> A website can track where your mouse pointer is, but surely they wouldn't do this on purpose just to get ad revenue.
reply
Better yet, detect mouse clicks and display a popup right where you clicked that says something you didn't want, and show a busy indicator to make sure the user understands that they just agreed to something important.
reply
It's important to have the accept cookies button pop up on top of something you are almost guaranteed to click at just the right moment.
reply
I was waiting for the overlay that hides the content until you turn off your ad blocker. Which of course is a trap because as soon as you do it covers the content in ads.
reply
Yes, and put a search bar that loses focus to some piece of crap I dont care about after I enter 3 characters, and some hotkeys that navigate me to a different page when I accidentally activate them because I thought I was going to put text in the search field.

youtube people I know you are in here. Fix your stupid PIP thing.

reply
..... In such a way that most commonly used button is replaced by an ad 0.001 seconds before you click it
reply
js eventListener that intercepts the click/tap event, moves the button somewhere else, and clicks the ad underneath.
reply
>I expect there to be at minimum 8 domains, but often 12-18.

news sites are the worst for this. bloomberg, nbc, etc. have 20+ domains, and as you click "temporarily allow" on one, it loads in a few more.

foxnews loads 36 domains before temporarily allowing any, which probably approaches 50 once you start allowing.

reply
And needs some kind of loop that retries endlessly to make the AdBlock counter go brrr
reply
It also loaded too fast because it has no (ai-generated/3d/high color contrast) 10MB background image in the hero section
reply
I'm sorry
reply
And the legitimate mass spying with multi thousand other organizations, of course.
reply