Я делаю кнопки с помощью тега привязки. Я хочу произвести эффект, но он работает не так, как ожидалось. псевдоэлемент обтекает кнопку, также скрывается текст. Но я хочу что-то вроде этого, псевдоэлемент будет между кнопкой и фоном.
section {
padding: 80px 0;
}
section.one {
background: #76B39D;
}
.button {
color: white;
margin: 10px;
font-size: 17px;
font-weight: 700;
letter-spacing: 1px;
text-transform: capitalize;
}
.button-type-1 {
border: 2px solid #fff;
padding: 10px 33px;
overflow: hidden;
position: relative;
}
.button-type-1:after {
position: absolute;
content: '';
width: 0px;
height: 0px;
background: #fff;
left: 50%;
top: 50%;
transform: translateX(-50%) translateY(-50%);
border-radius: 50%;
z-index: 0;
transition: all 0.4s ease;
}
.button-type-1:hover:after {
width: 200px;
height: 200px;
}
.button-type-1:hover,
.button-type-1:focus {
text-decoration: none;
}<section class = "one">
<a href = "" class = "button button-type-1">read</a>
</section>Мне нравится, что фон псевдоэлемента будет соответствовать размеру кнопки при наведении курсора. И текст кнопки также будет виден, но я думаю, что где-то испортился z-index или что-то еще.






z-index 1 ваш родственник .button-type-1 и -1 псевдо :after.
Также сделайте кнопку inline-block, чтобы предотвратить переполнение элемента :after.
section {
padding: 80px 0;
}
section.one {
background: #76B39D;
}
.button {
color: white;
margin: 10px;
font-size: 17px;
font-weight: 700;
letter-spacing: 1px;
text-transform: capitalize;
}
.button-type-1 {
border: 2px solid #fff;
padding: 10px 33px;
overflow: hidden;
position: relative;
display: inline-block;
z-index:1;
}
.button-type-1:after {
position: absolute;
content: '';
width: 0px;
height: 0px;
background: #fff;
left: 50%;
top: 50%;
transform: translateX(-50%) translateY(-50%);
border-radius: 50%;
z-index: -1;
transition: all 0.4s ease;
}
.button-type-1:hover:after {
width: 200px;
height: 200px;
}
.button-type-1:hover,
.button-type-1:focus {
text-decoration: none;
color:#000;
}<section class = "one">
<a href = "" class = "button button-type-1">read</a>
</section>@Hudai, чем добавить inline-block на свою кнопку. См. Обновленный ответ.
@Hudai Вам нужно установить display: inline-block; на .button-type-1 элемент jsfiddle.net/SamJakob/ezbycfdz/1
C. Это нормально, но псевдоэлемент не должен выходить за пределы области кнопки.