2016-06-14 2 views
1

У меня есть значок с символом глификона, который работает как флажок. Когда пользовательская клавиатура перемещается к звезде путем табуляции, значок звезды получает желтый стиль css, когда он является сфокусированным элементом. Идея заключается в том, чтобы просто показать пользователя, где они находятся на странице.Как я могу применить CSS-стиль для значка glymphicon ТОЛЬКО, когда он имеет фокус клавиатуры?

ОДНАКО, проблема заключается в том, что когда я нажимаю значок символа звезды, звезда будет сохранять желтый цвет, даже если табуляция на следующий элемент.

Как настроить CSS для применения только для навигации по клавиатуре?

<span ng-class="{'glyphicon glyphicon-star' : stack.favorite, 'glyphicon glyphicon-star-empty' : !stack.favorite}" style="float:right;padding-right:10px;padding-top:6px;"ng-click="toggleFavoriteStack(stack,'User');"> 
            </span> 

.

.glyphicon.glyphicon-star:focus { 
color: yellow; 
text-shadow: -2px 0 black, 0 2px black, 2px 0 black, 0 -2px black; 
} 

.glyphicon.glyphicon-star-empty:focus { 
color: yellow; 
box-shadow: -2px 0 black, 0 2px black, 2px 0 black, 0 -2px black; 
    } 
+0

Насколько я знаю, вы не можете. Нет никаких средств для разграничения фокуса клавиатуры и фокуса кликов. Но когда вы нажимаете кнопку после нажатия, она не должна оставаться в фокусе. Так что это озадачивает. –

+0

Как вы можете перейти к 'span' путем табуляции? –

+0

атрибут tabindex –

ответ

0

Вы можете попробовать:

input:not(:focus) { /* Styles for only form inputs that do not have focus */ }

Смежные вопросы