як видалити пунктирну лінію навколо натиснутого елемента в HTML


114

Я виявив, що якщо на сторінці є aпосилання, яке не посилається на нову сторінку, то, коли користувач натисне на неї, навколо елемента з’явиться пунктирна лінія, вона зникне лише тоді, коли користувач натисне що-небудь ще на сторінці, як щоб видалити це?

Приклад:

введіть тут опис зображення

Зверніть увагу на пунктирну лінію навколо елемента Section 2.


Як вам підтримувати контур для вкладки через елементи, але видаляти його, коли клацніть по одному?
Коста

Відповіді:


198

Використовувати outline:noneдля прив’язки класу тегів


Дякую, але це не працює для мене, я створив стільки посилань раніше, я ніколи не отримую цю проблему до цих пір. але зараз я розгублений, так що ж це за причина раніше?
Дурга Рао

17
Зауважте, що це зашкодить доступності вашого веб-сайту.
mike23

3
@Durgaprasad див. Відповідь Маркса. Вам також потрібно застосувати це a:active, a:focus.
Одіс

Я згоден w / mike23. Моя спроба досягти компромісу полягає в тому, щоб після події клацання (або, можливо, миша буде ще краще?) Видалити контур саме цього посилання (одночасно скидаючи будь-які та всі посилання назад, щоб мати контур прямо перед зазначеним видаленням.) інакше речі кумулятивно застрягають, якщо їх не визначити). Це тимчасово видаляє контур з останнього натиснутого елемента, зберігаючи його на інших, так що ви все ще можете знати, через що ви переходите на вкладку.
Макс Старкенбург

1
@cpu_meltdown Спробуйтеinput:focus{outline: none}
Sowmya



8

Спробуйте з !importantв css.

a {
  outline:none !important;
}
// it is `very important` that there is `no` `outline` for the `anchor` tag.  Thanks!

7

Щоб видалити всі пунктирні контури, у тому числі bootstrapтеми.

a, a:active, a:focus, 
button, button:focus, button:active, 
.btn, .btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn.focus:active, .btn.active.focus {
    outline: none;
    outline: 0;
}

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

Примітка: перед основним css слід додати href-посилання для css bootstrap, щоб завантажувальний пристрій не змінив ваш стиль.


3

Видалення outlineшкодить доступності веб-сайту. Тому я просто залишаю його там, але роблю його невидимим.

a {
   outline: transparent;
}

1
Якщо контур буде прозорим, все ще шкодить доступності вашого веб-сайту. Ідея полягає в тому, що вона забезпечує візуальний індикатор того, що елемент зосереджений. Якщо зробити його невидимим, цей показник втрачається. Більше інформації тут: outlinenone.com
ktbee

1

У моєму випадку це була кнопка, і, мабуть, з кнопками це лише проблема у Firefox. Тут знайдено рішення :

button::-moz-focus-inner {
  border: 0;
}

0

Його простий спробу нижче коду -

a{
outline: medium none !important;
}

Якщо щасливі ура! Хороший день

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.