Я пытаюсь установить абсолютную позицию стрелки относительно кнопки, которая переключает поле фильтра, используя :before
псевдоэлемент.
Я думаю, что не могу позиционировать относительнополе фильтра, потому что его ширина связана с другим div и мне нужно, чтобы треугольник был выровнен с внешней кнопкой.
Проблема: , когда кнопка находится в фокусе, контур присутствует как в кнопкеи его :before
, он же мой треугольник.Я ищу решение, которое очерчивает кнопку, но не ее :before
.
Что я уже пробовал: установить правило outline: none;
в селекторе :before
,Не сработало.
Что я достиг:
Мой код, упрощенный для целей вопроса:
/* Toggle control isn't necessary for the purpose of the question */
.button-filter {
background-color: #333;
color: $click-white;
position: relative;
border: none;
color: #fff;
padding: 1em;
}
.button-filter:before {
content: "";
position: absolute;
display: block;
width: 0;
height: 0;
left: calc(50% - 15px);
bottom: -20px;
border-bottom: 15px solid #333;
border-left: 15px solid transparent;
border-right: 15px solid transparent;
}
<button class="button-filter" autofocus>Filter</button>