纯HTML与JavaScript实现轮播图

一、效果

轮播图

代码实现

1、HTML部分

<div class="box" id="box">
    <div class="inner"><!--相框-->
        <ul>
            <li><img src="../beijing01.png" alt=""/></li>
            <li><img src="../beijing1.jpg" alt=""/></li>
            <li><img src="../beijing2.jpg" alt=""/></li>
            <li><img src="../beijing5.jpg" alt=""/></li>
        </ul>
        <ol></ol><!--小按钮-->
    </div>
    <!--左右按钮-->
    <div id="focus"><span id="left">&lt;</span><span id="right">&gt;</span>
    </div>
</div>

2、CSS部分

ul {
   
            list-style<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现 HTML 和 CSS 的轮播图可以用到 `input:checked` 和 `label` 标签的特性。以下是一个简单的示例: ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>CSS轮播图</title> <style> /* 隐藏所有轮播图 */ .carousel-inner > input { display: none; } /* 设置图片宽高和定位 */ .carousel-inner > img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; opacity: 0; /* 设置透明度为0,隐藏图片 */ transition: opacity 1s ease-in-out; /* 设置渐变效果 */ } /* 显示当前选中的图片 */ .carousel-inner > input:checked + img { opacity: 1; } /* 设置圆点样式 */ .carousel-indicators { position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); display: flex; justify-content: center; align-items: center; } /* 设置圆点样式 */ .carousel-indicators > label { width: 10px; height: 10px; border-radius: 50%; background-color: #999; margin: 0 5px; cursor: pointer; transition: background-color 0.5s ease-in-out; } /* 设置选中圆点样式 */ .carousel-indicators > input:checked + label { background-color: #333; } /* 隐藏input元素 */ .carousel-indicators > input { display: none; } </style> </head> <body> <div class="carousel-inner"> <input type="radio" id="slide-1" name="slides" checked> <img src="https://picsum.photos/id/1019/800/400" alt="Slide 1"> <input type="radio" id="slide-2" name="slides"> <img src="https://picsum.photos/id/1020/800/400" alt="Slide 2"> <input type="radio" id="slide-3" name="slides"> <img src="https://picsum.photos/id/1021/800/400" alt="Slide 3"> <div class="carousel-indicators"> <input type="radio" id="slide-1-input" name="slide-indicators" checked> <label for="slide-1-input"></label> <input type="radio" id="slide-2-input" name="slide-indicators"> <label for="slide-2-input"></label> <input type="radio" id="slide-3-input" name="slide-indicators"> <label for="slide-3-input"></label> </div> </div> </body> </html> ``` 在这个示例中,轮播图中有3张图片,每张图片都有一个对应的 input 元素,并且这些 input 元素都有相同的 `name` 属性,以便它们可以被分组,只有一个 input 被选中。圆点也是用类似的方式实现的:每个圆点都是一个 `label` 元素,它用于选择相应的 input 元素。 当 `input:checked` 时,当前图片的 `opacity` 属性被设置为 `1`,这样就可以显示当前选中的图片。 同样,当 `input:checked` 时,当前圆点的 `background-color` 属性被设置为 `#333`,这样就可以显示当前选中状态的圆点。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值