2010-06-10 29 views
47

Có ai biết cách vô hiệu hóa hoặc thao tác đường viền gạch ngang (trong hầu hết các trình duyệt) của phần tử dom nếu nó có trọng tâm theo thứ tự tabindex không?Xóa hoặc vô hiệu hóa đường viền tiêu điểm của trình duyệt qua javascript

Tôi muốn xây dựng phong cách riêng của mình cho một yếu tố tập trung, nhưng sẽ rất tuyệt khi sử dụng tính năng hiện có, vì với tabindex, bạn có thể liên kết sự kiện keydown với phần tử dom.

Trả lời

119

Chỉ cần tạo ra một quy tắc CSS cho các yếu tố bạn muốn có outline:none;

+0

omg không biết điều đó. cảm ơn! – helle

+3

@helle :) đó là những gì * stackoverflow * là tất cả về .. học những điều mới;) –

+0

.. Tôi đang làm việc với css quá lâu. không bao giờ cần thiết cho đến bây giờ ... lol – helle

-6

Sử dụng jQuery bạn có thể làm

$("#nav li a").focus(function(){ 
    $(this).blur(); 
}); 
+0

với mờ tôi mất tập trung, không phải là nó? vì vậy tôi không thể ràng buộc sự kiện keydown cũng như mousewheel ... – helle

+0

Phải, không nhận được toàn bộ câu hỏi;) –

+9

Đó thực sự là một câu trả lời khủng khiếp – coorasse

0
input::-moz-focus-inner { border: 0; } 
25

CSS lừa:

:focus { outline: none; } 
1
a { 
outline: 0; 
} 

a: hover, 
a: active, 
a: focus { 
    outline: none; 
} 

input::-moz-focus-inner { 
border: 0; 
} 
1

Với Firefox 53.0, nếu tôi tắt đường viền bằng một trong các giải pháp được đề xuất, Firefox sẽ hiển thị giải pháp mặc định.

Tuy nhiên, nếu tôi sử dụng một màu trắng, nó không phát hiện ra rằng những phác thảo được ẩn:

input:focus{ 
    outline: 1px solid rgba(255,255,255,1); 
} 
Các vấn đề liên quan