简单实现轮播图效果

效果图如上

代码部分

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
         img{
            width: 1000px;
            height: 600px;
        }
      button{
          background-color:rgb(0,0,0,0);
          width: 30px;
          height: 30px;
      }
      .current{
           background-color:orange;
       }
       #menu{
           width: 1000px;
           height: 600px;
           
       }
       .tab{
           width: 1000px;
           height: 800px;
           margin: 0 auto;
           position: relative;
       }
       #tablist{
            position:absolute;
            top:50px;
            left:400px;
            overflow: hidden;
       }
       #menu div{
           display: none;
       }
       #menu .intro{
           display: block;
       }
    </style>
</head>
<body>
    <div class="tab">
        <div id="menu">
            <div class="intro"><img src="tp/1.jpg" ></div>
            <div ><img src="tp/2.jpg" ></div>
            <div ><img src="tp/3.jpg"></div>
            <div ><img src="tp/4.jpg" ></div>
            <div ><img src="tp/5.jpg" ></div>   
        </div>
        <div id="tablist">
            <button class="current">1</button>
            <button>2</button>
            <button>3</button>
            <button>4</button>
            <button>5</button>
        </div>
    </div>
    <script>
      var tab=document.getElementById('tablist').getElementsByTagName('button')
      var lis=document.getElementById('menu').getElementsByTagName('div')
      //获取menu中的所有div标签的class的值给lis
      for(var i=0;i<tab.length;i++){
          tab[i].onclick=function(){
           change(this);
         }
      }
      function change(obj) {
            for(var i = 0; i < tab.length; i++) {
             if(tab[i] == obj) {         //判断button的class是否存在
                tab[i].className = "current";   
                //改变其class为current,同时将current对应的css样式赋给了这个button标签
                lis[i].className = "intro";       
                //改变其class为intro,同时将intro对应的css样式赋给了这个div标签
             } else {  //将class设为空,也就是说移除css样式使其不显示
                tab[i].className = "";     
                lis[i].className = "";
             }
            }
        }
    </script>
</body>
</html>

 

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HTML实现轮播图效果可以通过使用CSS的animation动画属性来实现。首先,需要设置一个轮播盒子(box),用来包裹轮播内容。然后,在轮播盒子内部,放置多个轮播元素(box1)。每个轮播元素都是一个div元素,并设置其大小和位置。接下来,使用CSS的@keyframes规则定义动画效果,通过设置transform属性来实现元素的平移动画效果。最后,将动画应用到轮播元素上,设置animation属性,并指定动画的名称、时间和循环次数。 具体步骤如下: 1. 在HTML中定义一个轮播盒子,使用div元素,并设置class属性为"box"。 2. 在轮播盒子内部,放置多个轮播元素,使用div元素,并设置class属性为"box1"。 3. 在CSS中,设置轮播盒子的大小和样式,使用.box选择器,设置width、height、overflow等属性。 4. 在CSS中,设置轮播元素的大小和样式,使用.box1选择器,设置width、animation等属性。 5. 在CSS中,设置每个轮播元素的大小和位置,使用.box1 div选择器,设置width、height、display、float等属性。 6. 在CSS中,使用@keyframes规则定义动画效果,通过设置transform属性实现平移动画效果。可以使用百分比或from和to关键字来设置动画的开始和结束状态。 7. 在CSS中,将动画应用到轮播元素上,使用animation属性,指定动画的名称、时间和循环次数。 代码示例: HTML: ```html <div class="box"> <div class="box1"> <div></div> <div></div> <div></div> <div></div> </div> </div> ``` CSS: ```css .box { width: 400px; height: 225px; overflow: hidden; margin: 0 auto; } .box1 { width: 1200px; animation: mybox 3s infinite; } .box1 div { width: 400px; height: 225px; display: inline-block; float: left; } @keyframes mybox { 0% { transform: translate(-0); } 50% { transform: translate(-400px); } 100% { transform: translate(-800px); } } ``` 这样,就可以实现一个简单HTML轮播图效果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值