Make iOS Show CSS :hover Styles Without Any JS

Occasionally I’ll build an interaction that happens entirely in CSS via hover or focus on a non-standard element. Unfortunately, iOS doesn’t apply hover states when you tap on, say, a div. The solution is to get iOS to treat that element like a link by listening for clicks.

One way to do this without changing any other behavior on the page is to add an onclick to the desired element:

<div onclick="void(0)" class="fancy-hover">…</div>

Tapping will now trigger the :hover CSS styles for this element. Tapping away, doesn’t have the desired effect by default. In those cases, you can also add this:

<body onclick="void(0)">…</body>

This assumes you’re not using the onclick attribute because it’s 2017 and there are better ways of registering those click handlers. ;)

 
132
Kudos
 
132
Kudos

Now read this

How to fix `React DevTools encountered an error: RangeError: Invalid array length`

I recently found this rather obscure message in my dev tools console when working on a React + Gatsby based website. It took a bit of digging to figure out where it was coming from since the stack trace was all React internals. Turns out... Continue →