[HN Gopher] Allow disabling of motion or animation
       ___________________________________________________________________
        
       Allow disabling of motion or animation
        
       Author : weba11y
       Score  : 181 points
       Date   : 2022-10-16 09:51 UTC (13 hours ago)
        
 (HTM) web link (accessibilityfordevelopers.com)
 (TXT) w3m dump (accessibilityfordevelopers.com)
        
       | throwaway09223 wrote:
       | I'm continually surprised that display systems don't implement
       | safeguards designed to minimize this sort of thing.
       | 
       | It seems like it should be relatively simple to prevent
       | repetitive flashing patterns from ever occurring by tracking the
       | last few seconds of display state and looking for blinking
       | regions of the screen. This would fix the problem for _all_
       | applications, including blinking caused by something like
       | scrolling too fast through a task switcher.
       | 
       | If I were epileptic I would want something like this for my
       | computer as a layer of safety.
        
         | [deleted]
        
       | Semaphor wrote:
       | What I'd like to have: A setting that says I prefer reduced
       | motion. Not "none" motion. Reduced.
       | 
       | Recently, I saw some UI component framework with a sortable list.
       | For anyone else, it moved the element from the old to the new
       | position. For me, it just switched them out, which makes for far
       | worse UX in that case.
       | 
       | If for some people any motion is bad, then give them a property,
       | or even better, as someone else said, make the browser disable
       | all animations (I do that for gif, webp etc. with a browser
       | extension)
       | 
       | All I want is for sites to not waste my time with animations or
       | make things harder to read with those dumb parallax effects
       | (thankfully that fad did not last long). That's why I have
       | "prefers reduced motion".
       | 
       | I guess it's a badly named property if everyone treats it like
       | "prefers no motion".
        
       | Aroga wrote:
       | Great!
        
       | greenbit wrote:
       | Why does even the thought of 'disabling' animations have to be
       | cast in the context of an accessibility issue?
       | 
       | What about those of us that see no need of user interface
       | elements that flollop about doing some kind of 'me Me ME!' dance,
       | when we just want to get things done?
       | 
       | I get it, if you're building a webpage maybe that's your artistic
       | vision, and I'm specifically railing on OS animations, but the
       | question still stands, 'why does it have to be an accessibility
       | thing'? How about a plain, flat, respectful 'turn it OFF bc the
       | user just doesn't want that' kind of option?
       | 
       | Don't care if this shows my age, when I was getting started in
       | this business, there was serious emphasis on giving the user what
       | they wanted. The user was the center of the universe, not "look
       | at my mad skills". It's just disrespectful to tell the user they
       | have an 'accessibility' issue, just to get things the way they
       | want them.
        
         | kaba0 wrote:
         | Well, the real world also "animates" everything, you can't open
         | your fridge instantly, nor can you grab your phone out of your
         | pocket, nor are driving a car has any "instant"
         | motions/happenings.
         | 
         | These in-between states gives us well-needed information and
         | are not artistic at all. Sure, they can be emulated badly, but
         | for example iphone's app switcher is imo a very natural
         | implementation of how it should be done. Won't make the action
         | take any more time, but it does instruct on what happens very
         | accurately. Compare it to i3's instant desktop switching, which
         | gives us barely any info to work with.
        
           | xigoi wrote:
           | If you could teleport anywhere you want, would you still
           | drive your car instead?
        
           | mrob wrote:
           | The in-between states are already provided by the finite
           | speed of human muscles. When I press a key, it already
           | "animates" up and down. I don't need to add any artificial
           | latency on top of that.
        
           | lapcat wrote:
           | The whole point of computers and technology is to do things
           | faster than we previously could.
           | 
           | "Instant" is a feature, not a bug.
        
             | kaba0 wrote:
             | Doing work faster? Yes. Communicating with/controlling the
             | computer though is still prone to the same psychological
             | "limitations" humans have.
        
           | tetris11 wrote:
           | If you _could_ instantly open your fridge, chances are you
           | _would_ , instead of implementing a needless delay
        
             | hypertele-Xii wrote:
             | If you wanted to smack your co-habitators in the face with
             | a lightspeed fridge door, sure.
        
           | tgsovlerkhgsel wrote:
           | These quick transition animations aren't the ones this spec
           | discusses.
           | 
           | The spec talks about "moving, blinking or scrolling
           | information that (1) starts automatically, (2) lasts more
           | than five seconds, and (3) is presented in parallel with
           | other content"
           | 
           | It's relatively uncommon to encouter this as part of an app
           | or actual legitimate content, but most sites that have ads
           | would violate this spec. And I've noticed that I found those
           | moving elements distracting enough that I just furiously
           | closed a site and gave up on pursuing the information on it
           | when I had the misfortune of encountering a news site on a PC
           | without an ad blocker.
        
             | kaba0 wrote:
             | I didn't reply to the spec though :D
             | 
             | Of course I'm all for reducing animations, and not even
             | only for accessibility reasons, but I don't agree with
             | calling all of them useless, when they do in fact have a
             | very important role.
        
           | ndriscoll wrote:
           | With i3, I press mod+n, and desktop n appears. What
           | information is missing that an animation would provide?
           | 
           | This feels like arguing that when we type, the computer
           | should scribble each letter just as we would with a pen, or
           | when a web page loads, it should slowly fill in like it did
           | on dial-up. I want the computer to work as an extension of my
           | brain; it should react as fast as I can think. I want it to
           | show me something, and that thing simply appears as it would
           | in the mind's eye.
        
         | makeitdouble wrote:
         | > that's your artistic vision
         | 
         | > "look at my mad skills"
         | 
         | I'm torn about this: there are enough unneeded and horrible
         | animations that I completely understand this point of view of
         | wanted to get rid of all of them.
         | 
         | I also see that as throwing the baby with the bath water.
         | There's also fundamentally useful and informative animations to
         | tell you something changed, what you're supposed to do with an
         | element or even what type of content you're looking at.
         | 
         | As an unintentional experiment, when I got my new phone a few
         | weeks ago I checked "disable animations" first and foremost,
         | and started using the device normally. And everytime I was
         | doing a specific action the screen froze with a round arrow. It
         | took me 5 min to understand that page and app transitions
         | where, well, "animations", and getting rid of them made for a
         | broken experience.
         | 
         | Same for popups and dialogs. Did it come from the top of the
         | screen or from somewhere else in the app ? If you saw the
         | animation you'd understand it immediately, before even parsing
         | the design of the popup or the content.
         | 
         | I think we're far away from the time where animations where
         | random animated gifs with no meaning, and platforms are mature
         | enough to use them in more advanced and useful ways most of the
         | time.
        
           | InCityDreams wrote:
           | >when I got my new phone a few weeks ago
           | 
           | Which phone? I'd like to know what not to purchase.
        
             | makeitdouble wrote:
             | Pixel 6a, highly recommend. It has its flaws (some proper
             | to the phone some coming from android) but it is still the
             | best value you'll get if you're not chained to iOS and want
             | a 'small' 6"ish phone. The disable animation thing is of my
             | own doing, and using the animation scale factors instead is
             | the better approach.
             | 
             | I researched a lot and actually tried to switch back to iOS
             | for a day or two before buying. All phones currently come
             | with pretty major drawbacks IMO, especially when living
             | outside of the US. Some lack of polish was the trade-off I
             | was willing to make.
        
           | soft_dev_person wrote:
           | I did this on my Android as well, intentionally. My Galaxy
           | S20 defaults to an animation speed that is just so horribly
           | slow, everything feels sluggish. It also uses more battery.
           | 
           | I, too, was a bit confused at the frozen arrow in the
           | beginning, until I realized it was just the loading indicator
           | used when animations are disabled (they could probably
           | improve that one). It is the one place where some sort of
           | movement might still be appropriate.
           | 
           | Anyway, I recently disabled this feature due to it breaking
           | the scroll behaviour in Play Store. Ironically the only app
           | (I've noticed) that uses animation for scrolling in a way
           | that makes this accessibility feature break it, making it a
           | very jarring experience.
           | 
           | Instead, I went into developer tools and scaled all
           | animations down to 0.5x. This at least makes all the annoying
           | transitions bearable. I think this setting should also be
           | exposed under accessibility settings.
        
             | windexh8er wrote:
             | Adjusting the animation scaling down is one of the first
             | things I do on any Android phone I buy. I've also changed
             | it for many friends and family who immediately ask how I've
             | managed to make their phones "faster". Not a single person
             | has ever asked me to turn it back. Yet this option is
             | buried in "Developer Tools", so - yes agreed that the
             | "Accessibility Settings" is a far better place. I do also
             | wish it was adjustable in 10% steps all the way down to
             | off. I think 0.3x is likely the sweet spot.
        
               | bombela wrote:
               | On a Google phone Android, turning off all animations
               | doesn't replace it with a loading icon. It just makes the
               | phone faster.
               | 
               | In Android 12 the Google Android launcher (the desktop,
               | with the non removable Google assistant/search bar),
               | doesn't obey turning off animation. I moved to the Nova
               | launcher.
               | 
               | Like the parent post, every friends and family member I
               | showed how to turn off animations was very pleased with
               | the speedup. Nobody ever asked to turn it back on.
        
           | thrown_22 wrote:
           | >As an unintentional experiment, when I got my new phone a
           | few weeks ago I checked "disable animations" first and
           | foremost, and started using the device normally. And
           | everytime I was doing a specific action the screen froze with
           | a round arrow. It took me 5 min to understand that page and
           | app transitions where, well, "animations", and getting rid of
           | them made for a broken experience.
           | 
           | I don't get it. That sounds like the OS is fundamentally
           | broken that it assumes a hard coded timer is required before
           | it does the next step.
        
             | makeitdouble wrote:
             | It isn't a hard coded timer, it's the "loading" animation
             | you see while an app or a page bootstraps a new view. In
             | macos it would be the equivalent of the spinning beach
             | ball.
             | 
             | In iOS I think there is just no way to disable all the
             | animations, while android gives you that switch that is
             | quite literal.
        
               | alwillis wrote:
               | You might want to check the accessibility features of
               | iOS: https://www.apple.com/accessibility/
        
         | mr-wendel wrote:
         | I didn't realize "@media (prefers-reduced-motion)" existed, so
         | I appreciate learning that.
         | 
         | I agree with counter points showing how animation can add
         | useful context, particularly in response to user interactions.
         | This fails to address the crux of the issue greenbit brings up:
         | the 'me Me ME!' dance. Yes, there are some places animation is
         | indispensable, but the problem is that 95% of them (and their
         | ilk) are giving the other 5% a bad name. The best way to enjoy
         | and maintain focus is to not have to be constantly on-guard for
         | hijack attempts.
         | 
         | Add in the fact that so many things exhibit this behavior
         | (animations just tend to be the worst), multiply by how many
         | sites/apps you spend time with. Even major, paid products can
         | be problematic. With the web, ads,
         | newsletter/don't-go/"privacy"/etc pop-ups are bad enough
         | already.
         | 
         | I think we can take things a step/leap further:
         | icon/logo/front-page take-overs and how aggressively those are
         | pushed in front of user eyeballs. I believe (citation wanted!)
         | that publishing control over the Google doodles is subject to a
         | very strict approval process to curate a very specific, subtle
         | "experience". It has to be the most valuable space of virtual
         | real estate in the world, even despite limitations. It's
         | certainly the most obnoxious to me.
         | 
         | So if there is to be general agreement on how things improve,
         | I'd rather it be based on something broader than accessibility,
         | but if accessibility wins some ground I'd appreciate it
         | nonetheless.
        
         | [deleted]
        
         | tgsovlerkhgsel wrote:
         | There is a trend that when a goal can't be achieved directly,
         | people try to push it through some other channel. In this case,
         | accessibility can be mandatory in some cases (by law or
         | specification) while "don't be an asshole to your users" is
         | not.
         | 
         | It's hard to tell for sure where it's just a happy coincidence
         | and where it is a pretext to make it either more appealing or
         | to force people to do it under some other requirement, but you
         | see this everywhere
         | 
         | - Some hostile "optimization" ideas by airlines getting nixed
         | by safety arguments, certainly not at all influenced (/s) by
         | the humans working at those regulators not wanting other humans
         | to be subjected to that
         | 
         | - Animal rights activists using climate change as the main
         | argument because it's a more popular topic now
         | 
         | - People trying to ban technical terms like
         | "blacklist"/"whitelist" claiming the goal is more precise
         | terminology
         | 
         | I'm sure there are plenty more examples.
        
           | bee_rider wrote:
           | Seems like a pretty damning indictment of current trends in
           | web design.
        
         | Bud wrote:
         | The answer, of course, is that it doesn't "have to" be cast
         | that way, but this is an article on an accessibility site. So
         | it's about accessibility.
        
         | Roark66 wrote:
         | Exactly, I've recently been trying a new version of gnome and I
         | was really surprised how snappy and quick it felt with all
         | animations disabled (it was running on a fast pc too). I much
         | prefer them off ever since.
        
         | watwut wrote:
         | The site is about accessibility. It does not claim no one ever
         | turned off animations due to accessibility.
         | 
         | Instead, it explains there is accessibility issue and teaches
         | how to fix that.
        
         | mkr-hn wrote:
         | This is like curb cuts: essential to people who need it, merely
         | useful to people who don't. I can't use an app that won't let
         | me turn off animations or make them user-initiated. There was a
         | long gap where I couldn't use Telegram because they added
         | animated stickers without a way to turn them off for months.
         | 
         | Framing it as an accessibility issue makes it harder to remove.
        
         | rikroots wrote:
         | I agree - prefers-reduced-motion is a user-controlled OS-level
         | setting (like prefers-color-scheme) which apps and websites
         | should do their best to respect.
         | 
         | Sadly we live in a world where developer time is a cost, and
         | the cost of respecting user preferences is way down the list of
         | things to spend cash/time on ... unless, of course, an A/B test
         | showing that common courtesy leads to better conversions gets
         | deployed and runs to significance.
         | 
         | Saying that, I don't believe we should give up on the fight to
         | better respect our users' preferences. For my part, I've
         | designed my JS library in a way to make it as easy as possible
         | for developers to build interactive 2d canvas-based graphics
         | that are as respective of user choices as possible[1][2][3]. If
         | nothing else, it demonstrates to other developers that such
         | things are not impossible to achieve.
         | 
         | [1] - https://codepen.io/kaliedarik/project/full/AMVKPx -
         | Accessible stacked bar, and line, charts
         | 
         | [2] - https://codepen.io/kaliedarik/project/full/AzWnNa -
         | Header text colorise and animate effects (respects prefers-
         | color-scheme, prefers-reduced-motion, etc)
         | 
         | [3] - https://scrawl-v8.rikweb.org.uk/learn/eleventh-lesson -
         | tutorial on how to make the 2d canvas more
         | accessible/respective of user choices
        
           | xigoi wrote:
           | If you're so tight on time that you can't add a simple
           | wrapper to your CSS rule, why bother with adding animations
           | at all?
        
             | kiawe_fire wrote:
             | It's often not a matter of "add a wrapper to this one CSS
             | rule" but rather, "add a wrapper to ALL of these rules and
             | some of this inline CSS scattered everywhere".
             | 
             | This is why, as part of a baseline of proper software
             | engineering, it's so important to get into a
             | configurability/feature flag mindset, right from the start.
             | 
             | If every feature is treated as something toggleable - if
             | every color and padding value is a variable, and every
             | visible string of text is wrapped in a function call that
             | just returns the string, right from the start, then things
             | like turning off animation, making colors more contrasting,
             | or translating on-screen text to another language becomes
             | magnitudes simpler when you do need it.
             | 
             | This is where I have a problem with the pervasiveness of
             | the YAGNI mindset. So many of these things fall right onto
             | the YAGNI sword.
             | 
             | Sure, you can get carried away with premature optimization,
             | for example, but there are so many simple habits developers
             | can and should develop that, once established, will add
             | virtually no time or complexity to what you're building but
             | will save time and complexity in spades later on.
             | 
             | And if you truly "ain't gonna need it", then you still
             | benefit from a more disciplined code structure.
        
         | eyelidlessness wrote:
         | > Why does even the thought of 'disabling' animations have to
         | be cast in the context of an accessibility issue?
         | 
         | > What about those of us that see no need of user interface
         | elements that flollop about doing some kind of 'me Me ME!'
         | dance, when we just want to get things done?
         | 
         | If it's a hindrance to you getting things done--to your access
         | --that's an accessibility issue. Accessibility that benefits
         | you doesn't imply anything _about you_ , it's an affordance for
         | you to get whatever you need out of that access.
         | 
         | For example: video transcripts might be a benefit for people
         | with auditory and/or visual impairments. But they also benefit
         | me because I prefer not to consume video content the vast
         | majority of the time. They help me access content I'd otherwise
         | probably never consume. That's... accessibility too!
        
         | Vinnl wrote:
         | I don't think there's a single accessibility feature that is
         | not also useful for a subset of people without any
         | disabilities. Accessibility is just one way to introduce
         | something, that doesn't have to mean it's not useful in other
         | ways too.
        
           | alwillis wrote:
           | Everyone is going to have a disability at some point, even if
           | only temporarily.
           | 
           | If you can't find your glasses, being able to magnify the
           | screen comes in handy.
           | 
           | Outside in the sun? Features for the sight-impaired like
           | increasing the contrast helps.
        
         | LunaSea wrote:
         | Just switch to a terminal.
        
           | ben_w wrote:
           | If only websites generally, and mobile phone apps at all,
           | worked on terminals.
        
         | foepys wrote:
         | I always disable animations on my Android phones because
         | everything so much snappier, even on high-end devices.
         | 
         | Whenever somebody tells me they want a new phone because their
         | old one is slow, I recommend disabling all animations. After
         | that they usually just keep their phone because it feels like
         | it's new again.
        
         | tomxor wrote:
         | I totally get where you're coming from, most employment of CSS
         | animate and transition is excessive and reduces UX.
         | 
         | The rule is that you should _never_ have to wait for a UI
         | animation - That said, UI animations done correctly, which are
         | subtle and extremely short, do enhance perception of UI
         | controls state and transitions. But I can 't blame people for
         | the broad hate towards animation on the web, so much of it is
         | done poorly in a way that detracts from the overall experience.
        
           | mcbits wrote:
           | I think the best rule of thumb for UI animations is to keep
           | speeding them up until users stop praising the
           | beautiful/elegant animations. They shouldn't notice the
           | animations.
        
           | mrob wrote:
           | I have only once seen a UI animation that I didn't have to
           | wait for. This was in the Metacity window manager, which had
           | an option to animate windows minimizing/maximizing using a
           | wireframe of their outline that could not be interacted with.
           | The actual window moved immediately, and the wireframe did
           | not obscure much of the screen while it moved. I would still
           | turn them off, but if every UI animation was designed like
           | this I would dislike them less.
        
             | anderspitman wrote:
             | That is a great design. Shows you where the minimized
             | window is (in case your brain missed it) without making you
             | wait. I would love to see an entire UI designed around the
             | principle of "don't make me wait. Ever."
        
         | matanshavit wrote:
         | I'm not an expert, but I wonder if animations could have a
         | detrimental effect on people with certain kind of epilepsy.
        
         | [deleted]
        
         | jwr wrote:
         | In some places (software I write) the user does come first,
         | especially the user that spends a lot of time with the
         | application. That's why there are no UI animations in my app, I
         | value my users too much. If I have data to display, I display
         | it as fast as I possibly can.
         | 
         | But I do have to accept that this makes the app look less
         | "polished" or "modern" at a first glance and likely makes some
         | people look at competitors when they come to evaluate the app.
         | 
         | This is somewhat similar to gyms (bear with me here): a newbie
         | will choose a gym based on how many machines they have. An
         | experienced person doing strength training knows that the only
         | thing that matters is how many racks they have. Gyms know that,
         | hence the large numbers of largely useless machines (and a very
         | limited number of squat racks and barbells, because strength
         | trainers are the worst customers to have: they actually do go
         | to the gym). The decision to subscribe is being made based on
         | the superficial.
        
           | bee_rider wrote:
           | Really the ideal gym client for some places seems to be
           | somebody who signs up for a membership and then never uses
           | it, so I guess maybe having too much of the stuff that an
           | experienced lifter might want would be a net negative for
           | them.
        
         | petee wrote:
         | Good example of ignoring users is the Google Photos app, which
         | has an option to turn off motion photo playback, but turning it
         | off just makes a shorter, even more jarring animation instead.
         | Its actually nauseating, and impossible to disable, without
         | reverting to static photos only (I let it record motion photos
         | because its often helpful to catch an action frame you'd
         | otherwise miss, but I want to choose when to playback, not
         | google)
        
       | solarkraft wrote:
       | I have a bit of a counter-point: I find things that just suddenly
       | change disorienting. Line jumps, UI elements just appearing -
       | every non-animated change. This doesn't happen in the physical
       | world and it startles me for a moment (longer than a transition
       | would have lasted for).
        
       | freediver wrote:
       | An example of animation that responds to prefers-reduced-motion
       | is the subtle animation on the Kagi home page:
       | 
       | https://kagi.com (you should see stars and clouds animate, same
       | is used for logged in users on the main search landing page)
       | 
       | We have a FAQ entry how to find this setting in different OS so
       | that users can control it:
       | 
       | https://kagi.com/faq#reduce-motion
        
       | rroot wrote:
       | Also on this topic, please stop letting css/viewport dictating
       | weather I see a menu on the left or not.
       | 
       | I'd like to resize my browser window and put it at the side of my
       | screen to use as a reference. Then I usually have to fight with
       | zoom levels to get that menu to disappear!
       | 
       | Even Mozilla is an offender with their otherwise splendid MDN:
       | https://developer.mozilla.org/en-US/docs/Web/API/Document_Ob...
        
         | Wowfunhappy wrote:
         | I disagree! When my viewport is larger, I have space for
         | niceties like always-visible menus. When my viewport is
         | smaller, I need what little space is available to be entirely
         | dedicated to content, even if it means open menus takes an
         | extra click.
         | 
         | I _want_ websites to manage this tradeoff for me when I zoom or
         | resize my browser window.
        
           | wruza wrote:
           | Both of you may be satisfied with a simple override switch-
           | button. Yours will be always on, gp's always off.
        
             | Wowfunhappy wrote:
             | I was actually thinking after my comment... what if you
             | could hold down e.g. shift while resizing the browser to
             | resize the window without resizing the viewport reported to
             | the website? So you could make the window narrower, then
             | scroll horizontally so the menu is off-screen.
        
               | wruza wrote:
               | I move a window past the screen partially when needed.
               | But it doesn't work well at two-display border. Another
               | real option is to find a container div and pin its width
               | via stylebot.
        
         | aendruk wrote:
         | Some sites are comically bad, either needlessly hiding their
         | menu or turning it into a one-column tower that looks
         | ridiculous at full viewport width (half my laptop screen). It
         | took me embarrassingly long to discover the cause of the
         | problem; I'd thought it was just a horrible trend in contrived
         | minimalist design.
         | 
         | I'm tempted to start a gallery a la Plain Text Offenders or
         | js;dr.
        
         | alvarlagerlof wrote:
         | But it doesn't fit when its small?
        
       | cebert wrote:
       | I too find most web animations and motions to be an annoyance. I
       | wonder if more sites will allow users to specify their animation
       | preferences similar to the way many sites allow users to specify
       | their day/night preferences.
        
       | rubatuga wrote:
       | Also, it would be great if Apple could let us disable the pull to
       | refresh gesture in safari.
        
         | eclipticplane wrote:
         | ... And be able to disable scroll to top!
        
       | enriquto wrote:
       | Yes, please!
       | 
       | And also for the command line. Why there's no global option to
       | switch off tqdm and all similar "modern" clutter? Like NO_COLOR
       | but with all terminal animations and stuff.
        
       | sys_64738 wrote:
       | I hate anything that changes the appearance of a webpage. I want
       | it to be static. No ad. No animations. No flashing. No videos. No
       | sound. Stop with that stuff.
        
       | poisonborz wrote:
       | You can disable animations on Android by enabling the developer
       | menu and setting animationScale to 0. The whole OS feels much
       | faster and its the first setting I make on a new phone. Some apps
       | ignore this scale, which is a good opportunity to report it as an
       | accessibility bug.
        
       | awinter-py wrote:
       | I have low-motion set on my android device and support for it is
       | let's say highly variable
       | 
       | I also have _no idea_ why the system bothers with most of the
       | animations -- the material  'hero animation' where there are two
       | different animations with sequential curves is awful
       | https://docs.flutter.dev/development/ui/animations/hero-anim....
       | The 'stretch at end of scroll' feature was making people sick if
       | you believe reddit
       | https://www.reddit.com/r/GooglePixel/comments/qcadhq/the_ove...
       | 
       | These also take upwards of a second, which is a lot of time when
       | I'm trying to get somewhere. I suspect they're being emulated on
       | the CPU on older hardware, contributing to jank and battery
       | issues
       | 
       | Some apps respond to low motion mode by replacing smooth motion
       | with high-frequency flicker, which seems like exactly the wrong
       | thing to do. I kind of wonder if this is the OS battling some
       | framework like Lottie
       | 
       | Fancy 'different parts of the layout have different scrolling
       | rules' in e.g. android google maps are _deranged_ and make
       | everything worse
       | 
       | Rip it all out and focus your energy on making usable software
       | for people maybe?
        
         | hjadal wrote:
         | The over-scroll stretch animation in Android 12 makes me sick
         | so I had to disable animations completely, as there is no
         | option to just disable that.
         | 
         | This does have the effect of making Firefox buggy and not
         | showing the content at the top of a page before you scroll down
         | and up again. Which only works on sites you can scroll on.
        
           | solarkraft wrote:
           | I'm happy about the scroll-stretching since it's at least
           | _something_ that happens when scrolling reaches the end
           | rather than just abruptly stopping. My mind head would expect
           | the list to keep scrolling but it just wouldn 't without any
           | physical metaphor for why it wouldn't. iOS does this much
           | more nicely.
        
       | jakzurr wrote:
       | Anyone remember "SuperStop"? Loved that. NoScript does ok, but
       | animated GIF's are still a pain.
        
       | LinuxBender wrote:
       | For what it's worth there is an add-on _for Firefox at least_
       | that will disable transitions. [1] I am not sure if this will
       | address all the needs. Maybe just the excessive CSS animations.
       | 
       |  _A simple CSS-only addon that globally disables all CSS
       | transitions and animations. This helps websites perform better or
       | feel more responsive when these effects are used excessively._
       | 
       | [1] - https://addons.mozilla.org/en-US/firefox/addon/disable-
       | trans...
        
       | mrob wrote:
       | From my chrome/userContent.css in my Firefox profile directory:
       | @namespace url(http://www.w3.org/1999/xhtml);       *, :before,
       | :after {       transition: none !important;       animation-
       | delay: 0ms !important;       animation-duration: 0ms !important;
       | }
       | 
       | toolkit.legacyUserProfileCustomizations.stylesheets must be set
       | to true in about:config for this to work.
       | 
       | This gives me the best "reduced motion" of all (zero motion),
       | with no effort required from developers, and unlike the official
       | preference, does not leave me vulnerable to the no-Javascript
       | fingerprinting discussed at
       | https://news.ycombinator.com/item?id=30237846 . I haven't noticed
       | it breaking anything important. The same can be put in
       | chrome/userChrome.css (without the namespace header) to remove
       | the annoying animations from Firefox itself, at the cost of
       | occasionally breaking the tab bar (it can be fixed by dragging a
       | tab to blank space and then immediate closing it).
       | 
       | I've never seen a UI animation I thought was necessary.
        
         | Lucent wrote:
         | This will break sites that count on "transitionend" event
         | callbacks to determine when one part of an animation has
         | finished to begin doing something else.
        
           | wruza wrote:
           | Can this be fixed with 1ms timings instead of 0ms?
        
         | wakeupcall wrote:
         | Unfortunately it does break a surprising number of websites
         | that just looove animations and in very annoying ways.
         | 
         | I was using https://addons.mozilla.org/en-US/firefox/addon/no-
         | transition... which operates on the same principle.
         | 
         | You can try yourself it breaks the google login form. You don't
         | need an account to try: just "login", enter a random address,
         | and watch the password prompt not being enabled as it waits for
         | the transition to complete.
         | 
         | Similarly, slack breaks doing random actions that have some
         | blur animation you often don't notice. It's usually always a
         | consequence of transitions and animations that are chained with
         | JS events.
         | 
         | I tried myself to come up with some attributes that would be
         | more robust (just as reducing the step count instead of
         | disabling the animation completely), but nothing has worked in
         | a reliable way.
         | 
         | Count me in as one of the folks that hates animations in UIs,
         | so I would really love to hear if anybody has a solution to
         | this.
        
           | lapcat wrote:
           | > I was using https://addons.mozilla.org/en-
           | US/firefox/addon/no-transition... which operates on the same
           | principle.
           | 
           | This extension doesn't seem to be available anymore.
        
             | wakeupcall wrote:
             | The github link:
             | 
             | https://github.com/gagarine/no-transition
             | 
             | although it's not the only one (see
             | https://github.com/jnlon/disable-transitions).
        
         | [deleted]
        
       | kazinator wrote:
       | > Users that are prone to seizures or motion sickness _or who are
       | on a sluggish remote desktop connection_ may need to disable
       | animation or motion. Add an option for users to disable this.
       | 
       | FTFY
        
         | EvanAnderson wrote:
         | I'm stuck on sluggish remote desktop connections for some
         | fraction of my work. I despise animations. They do nothing but
         | slow me down and waste bandwidth. I don't need cutesy
         | animations-- I need software that allows me to work
         | efficiently.
        
       | thrdbndndn wrote:
       | I don't mind animation in general, but I hate smooth scrolling
       | (first thing I disable when installing any browser).
       | 
       | There is a trend of adding fake smooth scrolling using js/css,
       | unfortunately.
        
         | solarkraft wrote:
         | Counter-point: Smooth scrolling is an essential feature for me.
         | I bought a specific mouse for this because I find sudden line-
         | jumps so disorienting.
        
       | wweverywhere wrote:
        
       | akdor1154 wrote:
       | It's a bit crap that this needs conscious work by developers to
       | implement - I feel like with just a little more thought put into
       | the CSS spec itself, that animations could have defaulted to
       | following the user's OS settings unless the dev explicitly marked
       | them as necessary.
       | 
       | Edit: not meaning to absolve developers of thinking about a11y,
       | or to accuse css spec designers of negligence, just making the
       | point that a system/spec that gets devs to do the right thing by
       | default would be a great thing.
        
         | hombre_fatal wrote:
         | Well, the issue is that since our tools already give us
         | arbitrary power over what the user sees, then of course the
         | developer has to opt-in to either using a subset of tools (e.g.
         | some animation API that the OS can toggle) or implement the
         | override like in TFA.
         | 
         | I don't really think you can force people to use a restrictive
         | animation API (and nothing else) since it would have to
         | generalize over all animation needs. Meanwhile, on iOS, SwiftUI
         | is very far from generalizing over all needs--as an example of
         | what a restrictive set of tools might look like. I don't think
         | it's even possible, and the imperative kit will always have to
         | exist.
        
         | watwut wrote:
         | Your point is entirely valid. It is just good design to not
         | rely on ever expanding checklist of everything every developers
         | should presumably know - including newbies fresh out of
         | higschool.
         | 
         | If it matters, it should happen by itself unless someone turns
         | it off.
        
       | ChrisMarshallNY wrote:
       | I write native iOS apps.
       | 
       | Apple has a lot of accessibility stuff, built-in, and API flags
       | exposed, all over. It has some _really_ comprehensive user-facing
       | accessibility controls.
       | 
       | I think I should probably still review the app I'm working on,
       | just to make sure that I'm honoring the users' wishes.
        
       | Etheryte wrote:
       | I seriously believe this is one of those issues where the browser
       | should enforce the user's preference over what websites want.
       | Rather than try and get every site worldwide to implement this
       | consistently, having the browser disable animations based on the
       | OS-wide configuration would be an easy win for everyone.
        
         | cwillu wrote:
         | s/one of those/one of the 100% of those/g #edited for clarity
        
         | zagrebian wrote:
         | Not all animations are an issue. Disabling all animations would
         | be too much. That's why the website needs to decide for each
         | animation if it should be affected by prefers-reduced-motion.
         | The browser cannot make this decision1.
         | 
         | 1. Maybe in 100 years, when we have powerful AI that and
         | reliably identify problematic animation.
        
           | petee wrote:
           | Developers can't make that decision either - given the
           | ability to override animations will end up with all the
           | things still animated because "we know best"
           | 
           | A better option is to respect the user, and if your site
           | really can't run without animation, then just show an error
           | stating that...Which shouldn't be a problem considering how
           | many websites refuse to work just because you are using a
           | chromium alternative that is realistically supported but just
           | isnt Chrome itself.
        
           | arcbyte wrote:
           | All animations are an issue.
        
             | zagrebian wrote:
             | Everything can be an issue. There is no one-size-fits-all
             | solution.
        
           | ben_w wrote:
           | Counterpoint: iOS has this flag, Duolingo FAQ says this is
           | the only way to turn off animations on iOS:
           | https://support.duolingo.com/hc/en-
           | us/articles/360058189572-...
           | 
           | Unfortunately, Duolingo ignores this flag for many
           | animations, and more than half of the screens are still
           | animated.
           | 
           | I find the animations Duolingo uses to be obnoxious
           | distractions, and I want them to be _actually_ disabled when
           | I tell it this. I also want this kind of thing to be
           | switchable on a per-app level, so that I have a way to
           | override the (I assume) opinion of the art department or the
           | marketing person that thinks these animations are engaging or
           | fun _without_ having to also disable the non-obnoxious
           | animations my other apps have.
           | 
           | (Mind you, at this point I'm thinking Duolingo has been a
           | lost cause for the last few years; although the courses seem
           | to still be improving, the UX has been getting worse faster).
        
             | zagrebian wrote:
             | Browsers could have a separate preference for disabling
             | animations more strongly. But that would be different from
             | the "reduce animations" accessibility preference. Those are
             | two different preferences with different use-cases. You
             | can't merge them.
        
             | wruza wrote:
             | I have tried this iOS flag a few times, and every time it
             | induced sickness instantly. It doesn't reduce animations,
             | it replaces them with nauseous fade in-out effect
             | _sometimes_ even in supported apps.
             | 
             | Turned it on to make phone/ui fast and instant, found out
             | it just doesn't. Idk what people with vision problems need,
             | but personally I need animations (either fade or motion) to
             | not exceed ~100ms.
        
             | zimpenfish wrote:
             | Speaking of iOS, Arc - whilst being a handy location/places
             | tracker - has some of the worst UX I've ever seen. Doing
             | almost anything involves swoops and fades and shifts - and
             | this is with "Reduce Motion" turned on. If I suffered from
             | motion sickness, I'd delete the app because it would knock
             | me sideways every time.
             | 
             | (eg. to confirm an unconfirmed item, you tap on a coloured
             | bar which then swoops a new pane from the right, shifts it
             | up, zooms the map, and occasionally does a little blink
             | refresh of the map. And you frequently get 4-5 of these a
             | day, each one doing its little UI dance. God help you if
             | you need to convert 10+ mis-identified transport segments
             | to a single bus...)
        
         | tgsovlerkhgsel wrote:
         | It's almost impossible to reliably distinguish animations
         | required for a web site to work properly from animations and
         | changes that can and should be disabled.
         | 
         | For example, try to distinguish (from "definitely should be
         | blocked" to "definitely can't be blocked without breaking
         | things"):
         | 
         | - An ad mascot hopping up or down telling you to click it
         | 
         | - A loading spinner spinning
         | 
         | - A progress bar
         | 
         | - Information you're waiting for being loaded once some process
         | completes
         | 
         | You could disable all CSS animations and GIFs, but that will
         | kill the loading spinner and risks that the next ad mascot will
         | be written in JavaScript. And it will still not stop one of the
         | biggest offenders in terms of blinking, ads that are being
         | replaced by a new ad every 30 seconds.
        
           | Etheryte wrote:
           | I disagree completely. When implemented by the browser
           | itself, it's straightforward to ensure all the relevant
           | events are still fired without presenting the actual
           | animation to the user. As for the list you brought up, a
           | loading spinner spinning and the like is exactly what should
           | be disabled. These are not interactions that are necessary
           | for the site to function and they bring harm to some users.
        
           | witheld wrote:
           | How about just drop most of the frames? Let them animate and
           | show users how it's going every once in a while
        
           | ohgodplsno wrote:
           | If web developers would use the actual browser APIs instead
           | of hacking around everything (manually setting the position
           | of items at every frame cool cool cool), this setting would
           | be respected.
           | 
           | See how it works in the Android world: anything that uses
           | Animation, AnimationSet, ObjectAnimator, Compose animations,
           | etc, all respect the system setting of animation speed (from
           | 0 to 3x). As a developer, as long as you use the proper API,
           | it'll work.
           | 
           | So, no, your ad mascot should be written with those APIs, and
           | not using them should bring a massive performance cost that
           | makes you think for a second or two about whether you're
           | doing it right.
        
           | mariusmg wrote:
           | >that the next ad mascot will be written in JavaScript
           | 
           | The horror....
        
             | tgsovlerkhgsel wrote:
             | This would mean a) it will still animate regardless of
             | setting b) there's a high chance it will spike your CPU
             | load because your CPU cycles don't cost the authors of the
             | ad money.
        
               | wruza wrote:
               | It has tangential costs, because a site which is slow or
               | drains battery will lose at least some users or SERP
               | positions and a site owner will take measures to
               | rebalance that. All this already works through various
               | metrics.
        
             | dalmo3 wrote:
             | > that the next ad mascot will be written in JavaScript
             | 
             | That's quite literally true already:
             | https://nextjs.org/conf
        
           | kazinator wrote:
           | If it moves spontaneously, it's unnecessary animation.
           | 
           | It is _necessary_ for things to move only if:
           | 
           | - they are objects being dragged by the mouse (or finger in
           | the case of touch input).
           | 
           | - they are the content of an animated image or video being
           | played. (User preference needed there: auto-play or not.)
        
             | Dylan16807 wrote:
             | How does that address "Information you're waiting for being
             | loaded once some process completes"?
             | 
             | Do you want to delay the entire page until absolutely
             | everything is loaded?
             | 
             | Maybe you want some clever code checking that you only go
             | from blank to filled, and you'd better have the size ready
             | up-front?
        
       | FridayoLeary wrote:
       | I think websites where you actually do things, such as retail or
       | text or video based sites should keep animations to the minimum,
       | as a visitor wants static content to examine. In fact only
       | promotional websites should have heavy animations IMO (if they
       | think its nice..).
        
       | layer8 wrote:
       | And yet Apple introduced Dynamic Island with no way to turn off
       | the constant animations.
        
         | CharlesW wrote:
         | Dynamic Island respects Reduce Motion. Also, you can interrupt
         | all "big" animations.
        
       ___________________________________________________________________
       (page generated 2022-10-16 23:00 UTC)