Александр С
Знаток
(368)
9 месяцев назад
Проблема заключается в том, что вы пытаетесь использовать псевдокласс :active для изменения свойств элемента .boxx, но псевдокласс :active применяется к элементам, которые находятся в активном состоянии (когда они нажимаются). Вместо этого вы можете использовать JavaScript для добавления класса к .boxx при нажатии на кнопку и изменения margin-left через CSS. Вот как можно это сделать:
<div class="wrappers">
<div class="boxx">
<!-- Ваш контент слайдера -->
</div>
<div class="controls">
<button class="left">
<img src="" alt="">
<img src="/img/Arrow - Left Circle.svg" alt="">
</button>
<button class="right">
<img src="/img/Arrow - Right Circle.png" alt="">
</button>
</div>
</div>
.wrappers {
position: relative;
overflow: hidden;
}
.boxx {
display: flex;
gap: 30px;
transition: margin-left 0.4s ease; /* Добавляем анимацию перехода */
}
.right-clicked .boxx {
margin-left: -370px; /* Устанавливаем нужное смещение */
}
JavaScript:
document.querySelector('.right').addEventListener('click', function() {
document.querySelector('.boxx').classList.add('right-clicked');
});
document.querySelector('.left').addEventListener('click', function() {
document.querySelector('.boxx').classList.remove('right-clicked');
});
Теперь при нажатии на кнопку "вправо" класс right-clicked добавляется к .boxx, что приводит к смещению слайдов. При нажатии на кнопку "влево" этот класс удаляется, и слайды возвращаются в исходное положение.
и у меня проблема :
В общем я сделал кнопку, чтобы при нажатии менялся margin-left(Последний селектор в css) и получался "слайдер"
Помогите пожалуйста решить проблему или подскажите как лучше сделать