As more web use moves onto touch-screen devices, is it worth spending time on nice CSS hover effects or mouse events?
In my opinion, touch-screen browsing is a downgraded web experience that perhaps most people are used to, so is it really necessary to create more code for desktop UIs, such as buttons that change colour, scale or rotation when hovered?
Is the psychology of desktop browsing different to mobile browsing?
Google puts mobile first, so why not just have desktop never as well and be done with it?
Well, I much prefer desktop for pretty much everything I want to do, and I don’t think I would miss hover effects if they were never there to begin with. However, desktop never is not good. I visited this Chinese website: 中国马镇旅游度假区 (Chinese Horse Town - a holiday venue) that looks good on mobile, but on desktop, it is the same layout magnified many times. That to me is what desktop never looks like on a desktop. The site is using an m. sub-domain, which I suppose may indicate a mobile site, but removing it, just redirects back to the m. subdomain. I suppose when in a country when most internet interactions are mobile, it probably works.
Back to hover transitions and effects; will you ever use desktop never for hover, or continue include it?
Especially if you later will use more SPA libraries like React, you want to start using components frameworks, that have the hover effects built in. So I think there is no need to put in a lot of hours to learn this, only if you want to become a UX designer or want to work without SPA libraries.
Thanks for your reply. Sorry for the long delay getting back to you.
Maybe in the future, I might look at libraries, but at the moment, I prefer to code the code rather than have it partially done. I go through the process of learning JS rather than JQuery. I like to try and understand how things work and do it myself.
I also have a bit of a worry about a lib falling out of favour and fade away. Having vanilla code knowledge probably won’t become obsolete at the same rate.
There are always trade-offs, e.g. between longevity of your knowledge and productivity.
Should you learn ReactJS? Maybe not, because frameworks disappear after some 5 years. => Learn JS
Should you learn JS? Maybe not, because high-level languages disappear after some 20 years. => Learn Assembler
Should you learn Assembler? Maybe not, because low-level languages disappear after some 50 years. => Learn electrical engineering
…
That’s why I like a 3-Tier approach:
CS concepts, e.g. imperative programming, functional programming
I’ve always said one should learn one level of abstraction above and below what they already know. Which is really just a fancy way of saying “always expand your knowledge”.