我们要创建基于CSS的动画滑块,这个滑块的工作没有任何JavaScript的使用。对于基于CSS的滑块控件一样,分页,下一步,上一步,我们使用单选按钮和标签”属性。
首先我们创建HTML CSS滑块结构。需要一个div和应用类的名称如“css-slider-wrapper”所有元素都将放在这个结构中
1  | <div  class="css-slider-wrapper"></div> | 
这样的div css 其具有全屏幻灯片,所以我们设置位置绝对
1 2 3 4 5 6 7 8 9 10  | .css-slider-wrapper  {  display: block;  background: #FFF;  overflow: hidden;  position:absolute;   left:0;   right:0;   top:0;   bottom:0;} | 
我们创建了外层div,接下来我们要创建4个内部轮播滑块,html和css如下所示
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22  | <div class="css-slider-wrapper">    <div class="slider slide1">        <div>            <h2>Css Based slider</h2>        </div>    </div>    <div class="slider slide2">        <div>            <h2>CSS Slider without use of any javascript or jQuery</h2>        </div>    </div>    <div class="slider slide3">        <div>            <h2>Full screen animation slider</h2>        </div>    </div>    <div class="slider slide4">        <div>            <h2>css3 slider</h2>        </div>    </div></div> | 
每个幻灯片创建4个类,CSS如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44  | .slider {    width: 100%;    height: 100%;    background: red;    position: absolute;    left: 0;    top: 0;    opacity: 1;    z-index: 0;         display: flex;    display: -webkit-flex;    display: -ms-flexbox;    flex-direction: row;    flex-wrap: wrap;         -webkit-flex-align: center;    -webkit-align-items: center;    align-items: center;    justify-content: center;    align-content: center;         -webkit-transition: -webkit-transform 1600ms;    transition: -webkit-transform 1600ms, transform 1600ms;    -webkit-transform: scale(1);    transform: scale(1);}/* each slide background color */ .slide1 {    background: #00bcd7;    left: 0;}.slide2 {    background: #009788;    left: 100%}.slide3 {    background: #ff5608;    left: 200%}.slide4 {    background: #607d8d;    left: 300%;} | 
我们已经做了滑块的CSS和HTML。接下来要创建控制分页,上下按钮,滑块。滑块控件的HTML和CSS如下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  | /* slider-pagination */ .slider-pagination {    position: absolute;    bottom: 20px;    width: 100%;    left: 0;    text-align: center;    z-index: 1000;}.slider-pagination label {    width: 10px;    height: 10px;    border-radius: 50%;    display: inline-block;    background: rgba(255,255,255,0.2);    margin: 0 2px;    border: solid 1px rgba(255,255,255,0.4);    cursor: pointer;}  /* Next and previous button*/.control {  position: absolute;  top: 50%;  width: 50px;  height: 50px;  margin-top: -25px;  z-index: 55;}.control label {  z-index: 0;  display: none;  text-align: center;  line-height: 50px;  font-size: 50px;  color: #FFF;  cursor: pointer;  opacity: 0.2;}.control label:hover {  opacity: 0.5;}.next {  right: 1%;}.previous {  left: 1%;} | 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18  | <div  class="slider-pagination">      <label for="slider_1"  class="page1"></label>      <label for="slider_2"  class="page2"></label>      <label for="slider_3"  class="page3"></label>      <label for="slider_4"  class="page4"></label></div><div class="next control">    <label for="slider_1" class="numb1"><i class="fa fa-arrow-circle-right"></i></label>    <label for="slider_2" class="numb2"><i class="fa fa-arrow-circle-right"></i></label>    <label for="slider_3" class="numb3"><i class="fa fa-arrow-circle-right"></i></label>    <label for="slider_4" class="numb4"><i class="fa fa-arrow-circle-right"></i></label></div><div class="previous control">    <label for="slider_1" class="numb1"><i class="fa fa-arrow-circle-left"></i></label>    <label for="slider_2" class="numb2"><i class="fa fa-arrow-circle-left"></i></label>    <label for="slider_3" class="numb3"><i class="fa fa-arrow-circle-left"></i></label>    <label for="slider_4" class="numb4"><i class="fa fa-arrow-circle-left"></i></label></div> | 
完成控制元素的HTML和CSS后,我们要创建单选按钮。因为我们使用此单选按钮主要功能为移动滑块这个单选按钮,把我们在第一位置像下面的HTML结构主滑块容器div
1 2 3 4 5 6  | <div class="css-slider-wrapper">         <input type="radio" name="slider" class="slide-radio1" checked id="slider_1">    <input type="radio" name="slider" class="slide-radio2" id="slider_2">    <input type="radio" name="slider" class="slide-radio3" id="slider_3">    <input type="radio" name="slider" class="slide-radio4" id="slider_4"> | 
对于CSS或单选按钮我们隐藏浏览器,因为我们不想显示在浏览器中,我们将使用属性标签
现在我们做滑动控制CSS,当你点击“下一步”,以前和分页按钮。我们使用:检查伪类来控制滑动。
为控制滑动效果的CSS这样
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36  | /* Slider control sliding effect */.slide-radio1:checked ~ .slider {  -webkit-transform: translateX(0%);  transform: translateX(0%);}.slide-radio2:checked ~ .slider {  -webkit-transform: translateX(-100%);  transform: translateX(-100%);}.slide-radio3:checked ~ .slider {  -webkit-transform: translateX(-200%);  transform: translateX(-200%);}.slide-radio4:checked ~ .slider {  -webkit-transform: translateX(-300%);  transform: translateX(-300%);}   /* next and previous will be  active when slider moving*/.slide-radio1:checked ~ .next .numb2, .slide-radio2:checked ~ .next .numb3, .slide-radio3:checked ~ .next .numb4, .slide-radio2:checked ~ .previous .numb1, .slide-radio3:checked ~ .previous .numb2, .slide-radio4:checked ~ .previous .numb3 {  display: block;  z-index: 1}  /* css for active current pagination */.slide-radio1:checked ~ .slider-pagination .page1, .slide-radio2:checked ~ .slider-pagination .page2, .slide-radio3:checked ~ .slider-pagination .page3, .slide-radio4:checked ~ .slider-pagination .page4 {  background: rgba(255,255,255,1)} | 
最后的HTML和css的滑块代码是如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 特别申明: 
					
					本站所有资源都是由网友投稿发布,或转载各大下载站,请自行检测软件的完整性! 本站所有资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担! 如有侵权请联系我们删除下架,联系方式:lei1294551502@163.com 
  |