zoukankan      html  css  js  c++  java
  • banner轮播图片的设计【纯js】

      在safari下,图片之间依然会有间隙【尽管设置了font-size:0px;但是只适用于大部分浏览器,并非所有】。

    解决方案(1):

      <img />之间不要空格,不要换行,连起来写。

    解决方案(2):

       不使用img的内联属性,使用block.将浮动设置为float:left;就彻底解决这个问题了。

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
        <link rel="stylesheet" href="http://www.zhenyinginvestment.com/admin/css/reset.css" >
    <title></title>
    <style type="text/css">
    #banner{
         600px;
        height: 265px;
        background-color: white;
        margin: 0px auto;
        position: relative;
        font-size: 0px;/*清除img图片间的回车符产生的间隔*/
        overflow: hidden;
    }
      
    #banner #bannerImg{
         100%;
        height: 100%;
        position: relative;
        top: 0px;
        left: 0px;
        white-space: nowrap; /*使这个图片能一行显示*/
        transition:all .2s linear;
        -moz-transition:all .2s linear;
        -webkit-transition: all .2s linear;
        -o-transition: all .2s linear;
    }
     
    /*
    transition-property:all|none;all表示所有属性改变
    transition-duration:3s;时间
    transition-timing-function:linear|ease-in;匀速,加速,贝塞尔曲线等
    合并起来就是transition:all 1s linear;这种写法
    */
     
    #banner #bannerImg .img{/*img默认是inline,同时使用nowrap实现图片在同一行*/
         100%;
        height: 100%;
        font-size:0px;
    }
    #banner #bannerButton{
    	font-size: 14px;
        color: white;
        position: absolute;
        bottom: 10px;
        left: 250px;
        background-color: #eae5e557;
        border-radius: 9px;
    }
    #banner #bannerButton .banner-button{
        border-radius: 9px;
        border: none;
        outline: none;
        cursor: pointer;
        background-color: #c7bdbd;
         18px;
        height: 18px;
        color: rgba(0,0,0,0);
    	margin-left:4px;
    	margin-right:4px;
    }
    #banner #bannerButtonAside .aside-right{
        position: absolute;
        right: 10px;
        top: 50%;
        margin-top: -32px;
        cursor: pointer;
         20px;
        height: 30px;
    	transform:rotate(180deg);
    	-ms-transform:rotate(180deg); /* Internet Explorer */
    	-moz-transform:rotate(180deg); /* Firefox */
    	-webkit-transform:rotate(180deg); /* Safari 和 Chrome */
    	-o-transform:rotate(180deg); /* Opera */
    }
       
    #banner #bannerButtonAside .aside-left{
        position: absolute;
        left: 10px;
        top: 50%;
        margin-top: -32px;
        cursor: pointer;
         20px;
        height: 30px;
    }
    #banner #bannerButtonAside img{
        100%;
        height: 100%;
    }
    </style>
    </head>
    <body>
        <section id="banner" onmouseover="bannerShiftStop()" onmouseout="bannerShiftStart()">
       
            <div id="bannerImg">
                <img class="img" src="http://pic4.nipic.com/20091217/3885730_124701000519_2.jpg"/><img class="img" src="http://n.sinaimg.cn/default/1_img/upload/3933d981/w800h521/20171212/kwEX-fypnsip9310109.jpg"/><img class="img" src="http://n.sinaimg.cn/default/1_img/upload/3933d981/w800h517/20171212/VBAU-fypnsip9310475.jpg"/>
            </div>
        
            <div id="bannerButton">
                <button class="banner-button" onclick="bannerIndexChangeTo(0)">0</button>
                <button class="banner-button" onclick="bannerIndexChangeTo(1)">1</button>
                <button class="banner-button" onclick="bannerIndexChangeTo(2)">2</button>
            </div>
        
       
            <div id="bannerButtonAside">
                <div class="aside-left" onclick="bannerPrevious()">
                    <img src="http://pic33.photophoto.cn/20141210/0007020186465408_b.png"/>
                </div>
                <div class="aside-right" onclick="bannerNext()">
                    <img src="http://pic33.photophoto.cn/20141210/0007020186465408_b.png"/>
                </div>
            </div>
               
        </section>
    </body>
        
    <script type="text/javascript">
        'use strict';
        var bannerImg=document.getElementById("bannerImg");
        var Button=document.getElementsByClassName("Button");
       
        var bannerIndex = 0;//当前banner图片位置
        var bannerNumber = 3;//banner图片张数
       
        var bannerWidth = 600;//banner图片宽度
       
        var numberBannerInterval = 0;//定时器对象,number
       
        function bannerShiftStart(){
            console.log("bannerShiftStart");
            numberBannerInterval = setInterval(function(){
                bannerNext();
            },3000);
        }
     
       
        function bannerShiftStop(){
            console.log("bannerShiftStop...");
            clearInterval(numberBannerInterval);
        }
       
        function bannerIndexChangeTo(idx){
            bannerIndex = idx;
    //        bannerImg.style.transition="all .2s linear";
    //        bannerImg.style.-moz-transition="all .2s linear";
    //        bannerImg.style.-webkit-transition="all .2s linear";
    //        bannerImg.style.-o-transition="all .2s linear";
            bannerImg.style.left = ""+(-bannerWidth)*(bannerIndex)+"px";
     
            pageIndexTo(idx);
        }
       
        function bannerNext(){
            if (bannerIndex < bannerNumber - 1) {
                bannerIndex++;
                bannerIndexChangeTo(bannerIndex);
            }else{
                bannerIndex = 0;
                bannerIndexChangeTo(bannerIndex);
            }
        }
        function bannerPrevious(){
            if (bannerIndex > 0) {
                bannerIndex--;
                bannerIndexChangeTo(bannerIndex);
            }else{
                bannerIndex = bannerNumber - 1;
                bannerIndexChangeTo(bannerIndex);
            }     
        }
     
        function pageIndexTo(idx){
            var parentPage = document.getElementById("bannerButton");
            var arrPages = parentPage.getElementsByClassName("banner-button");
            for(let loop = 0;loop < arrPages.length;loop++){
                if(loop == idx){
                    arrPages[loop].style.backgroundColor = 'blue';
                }
                else{
                    arrPages[loop].style.backgroundColor = 'red';
                }
            }
        }
     
        pageIndexTo(0);
        bannerShiftStart();
       
    </script>
    </html>
    

      

    ...

    ...

    ...

    ,...

  • 相关阅读:
    05、镜像操作
    04、docker安装、启动服务
    03、docker架构的介绍
    02、docker前身LXC
    01、dcoker介绍
    08、Zabbix分布式配置
    07、Zabbix日常问题汇总
    06、1.9 Zabbix监控MYSQL主从
    05、zabbix邮件报警
    04、zabbix自动发现
  • 原文地址:https://www.cnblogs.com/dongfangchun/p/8030552.html
Copyright © 2011-2022 走看看