排行榜 统计
  • 文章总数:1688 篇
  • 评论总数:5 条
  • 分类总数:8 个
  • 最后更新:昨天 21:09

实现一个宽度为1920px、高度为500px的轮播

本文阅读 2 分钟
首页 程序人生 正文

实现一个宽度为1920px、高度为500px的轮播,可以使用以下代码。

HTML 代码:

<div id="slideshow-container">
  <div class="my-slide fade">
    <img src="image1.jpg">
    <div class="slide-text">
      <h1>这里是标题1</h1>
      <p>这里是图片1的描述文字。</p>
      <a href="#" class="btn">查看详情</a>
    </div>
  </div>

  <div class="my-slide fade">
    <img src="image2.jpg">
    <div class="slide-text">
      <h1>这里是标题2</h1>
      <p>这里是图片2的描述文字。</p>
      <a href="#" class="btn">查看详情</a>
    </div>
  </div>

  <div class="my-slide fade">
    <img src="image3.jpg">
    <div class="slide-text">
      <h1>这里是标题3</h1>
      <p>这里是图片3的描述文字。</p>
      <a href="#" class="btn">查看详情</a>
    </div>
  </div>

  <a class="prev" onclick="plusSlides(-1)">&#10094;</a>
  <a class="next" onclick="plusSlides(1)">&#10095;</a>
</div>

CSS 代码:

/* 轮播区域的样式 */
#slideshow-container {
  max-width: 1920px;
  height: 500px;
  margin: 0 auto;
  position: relative;
}

/* 图片样式 */
.my-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 图片文字描述样式 */
.slide-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
}

.slide-text h1 {
  font-size: 48px;
  margin-bottom: 20px;
}

.slide-text p {
  font-size: 18px;
  margin-bottom: 30px;
}

.btn {
  display: inline-block;
  font-size: 16px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  padding: 12px 32px;
  background-color: #c2185b;
  border-radius: 30px;
}

/* 左右箭头样式 */
.prev, .next {
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 32px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Next 箭头右侧对齐 */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* 鼠标悬停在箭头上添加透明度 */
.prev:hover, .next:hover {
  background-color: rgba(0,0,0,0.8);
}

JavaScript 代码:

var slideIndex = 1;
showSlides(slideIndex);

// 下一个/上一个 控件被点击时执行
function plusSlides(n) {
  showSlides(slideIndex += n);
}

// 选项卡控件被点击时执行
function currentSlide(n) {
  showSlides(slideIndex = n);
}

function showSlides(n) {
  var i;
  var slides = document.getElementsByClassName("my-slide");
  if (n > slides.length) {
    slideIndex = 1;
  }    
  if (n < 1) {
    slideIndex = slides.length;
  }
  for (i = 0; i < slides.length; i++) {
      slides[i].style.display = "none";  
  }
  slides[slideIndex-1].style.display = "block";
}

在 CSS 中,.my-slide img 控制轮播图片的样式,.slide-text 控制图片上的文字样式和对齐方式, .btn 控制图片上的按钮样式。

在 JavaScript 中,showSlides 函数显示当前轮播图。

这就是一个简单的轮播,显示图片和图片上的文字描述和按钮,用户可以通过点击左右箭头来浏览不

本文来自投稿,不代表本站立场,如若转载,请注明出处:https://typecho.firshare.cn/archives/1983.html
免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。避免网络欺诈,本站不倡导任何交易行为。如您私自与本站转载自公开互联网中的资讯内容中提及到的个人或平台产生交易,则需自行承担后果。本站在注明来源的前提下推荐原文至此,仅作为优良公众、公开信息分享阅读,不进行商业发布、发表及从事营利性活动。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。
-- 展开阅读全文 --
两种方式实现html根据设备展示不同内容
« 上一篇 06-27
如何离线试用 VirboxProtector Trial
下一篇 » 07-03