Я просто сделал противоположное, используя :afterи::after потому, что мне нужно было сделать мою нижнюю границу ровно 1.3remшире:
Мой элемент сильно деформировался, когда я использовал, :beforeи :afterв то же время, потому что элементы выровнены по горизонтали display: flex, flex-direction: rowиalign-items: center .
Вы можете использовать это для создания чего-то более широкого или узкого, или, возможно, любых модов математических измерений:
a.nav_link-active {
color: $e1-red;
margin-top: 3.7rem;
}
a.nav_link-active:visited {
color: $e1-red;
}
a.nav_link-active:after {
content: '';
margin-top: 3.3rem; // margin and height should
height: 0.4rem; // add up to active link margin
background: $e1-red;
margin-left: -$nav-spacer-margin;
display: block;
}
a.nav_link-active::after {
content: '';
margin-top: 3.3rem; // margin and height should
height: 0.4rem; // add up to active link margin
background: $e1-red;
margin-right: -$nav-spacer-margin;
display: block;
}
Извините, SCSSпросто умножьте числа на 10 и замените переменные на нормальные значения.
div:beforeleft: 50px.