【问题标题】:How to style prev/next arrows button?如何设置上一个/下一个箭头按钮的样式?
【发布时间】:2015-02-08 19:04:23
【问题描述】:

目标

我一直在尝试修改slick.css 以适应我在我的网站中需要的样式。 我从here 得到了slick.css

现在

  • 我想让箭头(左+右)更大
  • 对于图标,我想使用周围没有circle-border 的那个。
  • 我喜欢fa-chevron-rightfa-chevron-left

我尝试了什么?

slick.css的一部分

.slick-prev, .slick-next { position: absolute; display: block; height: 200px; width: 50px; line-height: 0; font-size: 0; cursor: pointer; background: transparent; color: transparent; top: 50%; margin-top: -10px; padding: 0; border: none; outline: none; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { outline: none; background: transparent; color: transparent; }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: 0.25; }

.slick-prev:before, .slick-next:before { font-family: "slick"; font-size: 20px; line-height: 1; color: red; opacity: 0.75; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }



.slick-prev { left: -10px; top: 70px;  }
[dir="rtl"] .slick-prev { left: auto; right: -10px; top: 70px; }
.slick-prev:before { content: "←"; }
[dir="rtl"] .slick-prev:before { content: "→"; }

.slick-next { right: -10px; top: 70px; }
[dir="rtl"] .slick-next { left: -10px; top: 70px; right: auto; }
.slick-next:before { content: "→"; }
[dir="rtl"] .slick-next:before { content: "←"; }

HTML

<div class="row slick ">
// just a bunch of lists in here
</div>

细节照片

这是我现在拥有的。

这是我想要的。


问题

  • 有人可以帮我解决这个问题吗?

    非常感谢您的考虑和时间。 :)

【问题讨论】:

  • 您也可以发布您的相关html吗? =)
  • 你为什么不使用 font-awesome 库..并使用 fa-angle-* 图标代替.. jsfiddle.net/qfMdP/26
  • @mikelt21 :我根据您的要求添加了一些 HTML。看看吧。
  • @AlokBhat :我想使用它,但是如何在我的 css 文件中使用它?你能回答你的想法吗?

标签: javascript jquery css html


【解决方案1】:

基本的东西是它通过内容属性产生箭头:

.slick-prev:before, .slick-next:before { font-family: "slick"; font-size: 40px; line-height: 1; color: red; opacity: 0.75; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }   

.slick-prev:before { content: "‹"; }
[dir="rtl"] .slick-prev:before { content: "›"; }

[dir="rtl"] .slick-next { left: -10px; top: 70px; right: auto; }
.slick-next:before { content: "›"; }
[dir="rtl"] .slick-next:before { content: "‹"; }

替换这些类,然后使用边距和位置属性来调整箭头,如果这不能解决问题,请给我发送http://jsfiddle.net/ 链接,我将向您发送完整的解决方案。

如果想使用 Font Awesome

.slick-prev:before, .slick-next:before { font-family: FontAwesome; font-size: 40px; line-height: 1; color: red; opacity: 0.75; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }   

.slick-prev:before { content: "\f053"; }
[dir="rtl"] .slick-prev:before { content: "\f054"; }

[dir="rtl"] .slick-next { left: -10px; top: 70px; right: auto; }
.slick-next:before { content: "\f054"; }
[dir="rtl"] .slick-next:before { content: "\f053"; }

字体图标列表请访问http://astronautweb.co/snippet/font-awesome/ 以及如何实现字体访问这个线程 Use font awesome icon as css content

【讨论】:

  • &lt; + &gt; 看起来不太好。如果我想为 [&gt;](fa-chevron-right) 使用 font awesome 该怎么办。你能帮我吗?
  • 那里有很多免费的图标字体,只需谷歌它并应用到您的元素.slick-prev {font-family:xxxxxx}
  • 你可以使用:这样我正在更新我的答案,看看那里的解决方案
  • 我喜欢你的更新。感谢那。请问你从哪里得到\f054
  • 访问此页面,您将获得所有代码:astronautweb.co/snippet/font-awesome
【解决方案2】:

.slick-prev::before {
    font-family: FontAwesome;
    content: "\f0d9";
    font-size: 22px;
}  
.slick-next::before {
    font-family: FontAwesome;
    content:  "\f0da";
    font-size: 22px;        
}      
<link href="http://fontawesome.io/assets/font-awesome/css/font-awesome.css" rel="stylesheet"/>

<button type="button" class="slick-prev "></button>

<button type="button" class="slick-next "></button>

【讨论】:

    【解决方案3】:

    如果你使用的是 sass,你可以设置 slick 提供的 sass 变量。

    参考:Add custom buttons on Slick Carousel

    【讨论】:

      【解决方案4】:
      <script type="text/javascript">
      $(document).ready(function(){
          $('.responsive_com2').slick({
              arrows: false,
              dots:true,
              infinite: true,
              speed: 300,
              slidesToShow: 1,
              slidesToScroll: 1,
              slidesPerRow: 1,
              rows: 1,
          });
      
          $('.left_news').click(function(){
              $('.responsive_com2').slick('slickPrev');
          })
      
          $('.right_news').click(function(){
              $('.responsive_com2').slick('slickNext');
          })
      
      });
      </script>
      

      【讨论】:

      • w3.org/2000/svg" xmlns:xlink="w3.org/1999/xlink" x=" 0px" y="0px" viewBox="0 0 10 10" 样式="启用背景:新 0 0 10 10;" xml:space="preserve">
        右箭头代码来了
      猜你喜欢
      • 1970-01-01
      • 2021-12-27
      • 2020-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-26
      • 2012-01-14
      相关资源
      最近更新 更多