我为Slick Slider Carousel创建了一个带有圆圈的自定义左右V形,但是当我点击左侧或右侧V形时,圆圈消失了。当我点击圆圈外面或点击对面的雪佛龙时,圆圈会回来。我认为它与覆盖当前元素的before伪类有关。有人可以帮助我并解释我做错了什么吗?我有一份工作JS Fiddle here。我不知道为什么CSS没有在这里的代码片段中首先加载,所以你看不到它在这里工作。检查JSFiddle,谢谢。
$('.carousel-one').slick({
arrows: true,
infinite: true,
speed: 1000,
slidesToShow: 1,
centerMode: true,
variableWidth: true,
autoplay: true,
autoplaySpeed: 2000
});
.slick-next:before {
content: '';
display: inline-block;
width: 15px;
height: 15px;
border-top: 2px solid #333;
border-right: 2px solid #333;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
.slick-prev:before {
content: '';
display: inline-block;
width: 15px;
height: 15px;
border-top: 2px solid #333;
border-right: 2px solid #333;
-webkit-transform: rotate(-135deg);
-moz-transform: rotate(-135deg);
-o-transform: rotate(-135deg);
transform: rotate(-135deg);
}
.slick-prev:hover,
.slick-next:hover {
background-color: rgba(255, 255, 255, 0.7);
width: 45px;
height: 45px;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
-o-border-radius: 50%;
border-radius: 50%;
}
.slick-prev:hover {
padding-left: 8px;
}
.slick-next:hover {
padding-right: 8px;
}
.slick-next {
right: 20px;
padding-right: 8px;
background-color: rgba(255, 255, 255, 0.5);
width: 45px;
height: 45px;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
-o-border-radius: 50%;
border-radius: 50%;
}
.slick-prev {
left: 20px;
padding-left: 8px;
background-color: rgba(255, 255, 255, 0.5);
width: 45px;
height: 45px;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
-o-border-radius: 50%;
border-radius: 50%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/jquery.slick/1.3.15/slick.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/jquery.slick/1.3.15/slick.min.js"></script>
<div class="carousel-one">
<div><img src="http://lorempixel.com/400/200" alt="Image three"></div>
<div><img src="http://lorempixel.com/400/200" alt="Image one"></div>
<div><img src="http://lorempixel.com/300/200" alt="Image two"></div>
<div><img src="http://lorempixel.com/320/200" alt="Image four"></div>
<div><img src="http://lorempixel.com/400/200" alt="Image five"></div>
<div><img src="http://lorempixel.com/200/200" alt="Image seven"></div>
<div><img src="http://lorempixel.com/300/200" alt="Image six"></div>
</div>
答案 0 :(得分:1)
单击此按钮时,焦点会亮起。有一个css伪选择器:focus
,它以聚焦状态为目标。您需要覆盖聚焦元素的现有样式,如下面的示例
.slick-prev:focus, .slick-next:focus {
background-color: rgba(255, 255, 255, 0.5) !important;
}