CSS HTML PHP
<div class="btn-wrapper">
<a href="https://vk.ru/umka161fond" target="_blank" rel="noopener noreferrer" class="vk-button">
<span class="vk-icon-img"></span>
</a>
</div>
/* Контейнер — центрирует кнопку на странице */
.btn-wrapper {
display: flex;
justify-content: center;
align-items: center;
padding: 20px 0;
}
/* Сама кнопка-обёртка */
.vk-button {
position: relative;
width: 60px;
height: 60px;
z-index: 9999;
background: none;
border: none;
display: block;
cursor: pointer;
overflow: visible;
margin: 0;
padding: 0;
}
/* Иконка — ставим ровно по центру кнопки */
.vk-icon-img {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(1);
width: 40px;
height: 40px;
background-image: url('/img/vk.png');
background-size: contain;
background-repeat: no-repeat;
background-position: center center;
transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
z-index: 3;
}
.vk-button:hover .vk-icon-img {
transform: translate(-50%, -50%) scale(1.12);
}
/* Кольца — берём твою логику один в один, только цвет меняем */
.vk-button::before,
.vk-button::after {
content: "";
display: block;
position: absolute;
/* Эти отступы делают кольцо больше кнопки и центрируют его */
left: -20px;
right: -20px;
top: -20px;
bottom: -20px;
border-radius: 50%;
border: 1px solid #45668e;
animation: border-animate 1.5s linear infinite;
opacity: 0;
z-index: 1;
pointer-events: none;
}
.vk-button::after {
animation-delay: .5s;
}
@keyframes border-animate {
0% {
transform: scale(0.5);
opacity: 0;
}
50% {
opacity: 1;
}
100% {
transform: scale(1.2);
opacity: 0;
}
}
@media (max-width: 768px) {
.vk-button {
width: 50px;
height: 50px;
}
.vk-icon-img {
width: 34px;
height: 34px;
}
/* Чтобы кольца не стали слишком мелкими, оставляем те же отступы — кольцо будет чуть крупнее кнопки */
.btn-wrapper {
padding: 15px 0;
}
.vk-button:hover .vk-icon-img {
transform: translate(-50%, -50%) scale(1.08);
}
}
