Thường thì tôi đang gặp phải một menu khi di chuột và cho menu thiết bị di động sẽ mở khi nhấp. Bây giờ, ví dụ: xem xét sau Ví dụ:CSS: di chuột /: tập trung vào sự kiện nhấp trên thiết bị cảm ứng (di động)
.btn {
width: 200px;
background-color: #333;
color: white;
padding: 10px;
}
.menu {
display: none;
padding: 15px;
}
.btn:hover .menu {
display: block;
}
.btn:focus .menu {
display: block;
}
<div class="btn">
Button
<div class="menu">I am menu</div>
</div>
Bây giờ điều này tự động hoạt động trên các thiết bị di động bởi vì trạng thái hover là dính trên các thiết bị cảm ứng. Nhưng liệu hack này có thể áp dụng cho tất cả các thiết bị cảm ứng không? Đó là, nó có đáng để mạo hiểm? Sẽ có một số thiết bị cảm ứng không có trạng thái di chuột dính? Rõ ràng là thay thế là gán các sự kiện chạm/bấm với JavaScript trên các thiết bị cảm ứng nhưng điều này có vẻ dư thừa vì tôi chưa thấy bất kỳ thiết bị cảm ứng nào không có trạng thái di chuột dính?
Vì vậy, câu hỏi của tôi là:
Is it okay để sử dụng trạng thái hover hack hay tôi nên sử dụng các sự kiện JavaScript để làm cho nó nhiều đạn bằng chứng?
Tôi muốn đi với nó, nên được tốt. – Roberrrt
@Roberrrt Thực sự, tôi luôn sử dụng cách tiếp cận này trong công việc trước đây của mình nhưng bây giờ tôi nhận được chút nghi ngờ. – user31782
Nên ổn. –