Elements, and How Can I Fix It? " />
Problem:
In iOS browsers, specifying styles for the :active pseudo-class for elements fails to activate when the element is tapped. The issue occurs in WebKit-based browsers on iPhones, iPads, and iPods.
Code Example:
<style> a:active { background-color: red; } </style> <!-- snip --> <a href="#">Click me</a>
Solution:
To resolve this issue in Mobile Safari, apply the ontouchstart event listener to the
element:<body ontouchstart=""> ... </body>
This global event listener enhances the responsiveness of all buttons on the page.
Alternative Solution:
An alternative approach is to utilize the Fastclick JavaScript library:
<script src="//cdnjs.cloudflare.com/ajax/libs/fastclick/1.0.6/fastclick.min.js"></script> <script> FastClick.attach(document.body); </script>
Fastclick speeds up click events on touch devices and addresses the :active pseudo-class issue.
The above is the detailed content of Why Doesn\'t :active Pseudo-Class Work on Mobile Safari\'s Elements, and How Can I Fix It?. For more information, please follow other related articles on the PHP Chinese website!