CSS与JavaScript实现Tab标签页切换功能

作者:像素漫游时间:2026-10-22 18:15:28浏览:558

本文介绍如何利用CSS样式与JavaScript脚本结合,实现简洁的Tab标签页切换功能。通过HTML结构定义标签与内容区块,CSS控制外观与默认显示状态,JS监听点击事件动态切换选中状态及对应内容块,最终实现用户交互效果。

Tab切换功能概述

本文介绍如何使用CSS配合JavaScript实现Tab标签页的切换效果,内容包含具体代码示例与运行效果图,供开发者参考。

以下是实现该功能所需的HTML结构代码。

HTML结构实现


<p id="main">
  <!--标题-->
  <ul id="tab">
   <li class="showed">tab1</li>
   <li>tab2</li>
   <li>tab3</li>
  </ul>
  <!--内容-->
  <p id="contents">
   <ul style="display:block;"><!--默认显示第一个-->
    <span>模块一</span>
   </ul>
   <ul>
    <span>模块二</span>
   </ul>
   <ul>
    <span>模块三</span>
   </ul>
  </p>
 </p>

接下来定义CSS样式,用于控制标签栏及内容区域的视觉呈现。

CSS样式设计


li{
 list-style:none;
}
 #main {
  width: 600px;
  margin: 200px auto;
 }
 
 #tab {
  overflow: hidden;
  background: #000;
  border: 1px solid #000;
 }
 
 #tab li {
  float: left;
  color: #fff;
  height: 30px;
  cursor: pointer;
  line-height: 30px;
  padding: 0 20px;
 }
 
 #tab li.showed {
  color: #000;
  background: #ddd;
 }
 
 #contents {
  border: 1px solid #000;
  border-top-width: 0;
 }
 
 #contents ul {
  line-height: 150px;
  display:none;
  margin: 0 30px;
  padding: 10px 0;
 }

随后编写JavaScript逻辑,处理用户点击事件并切换显示内容。

JavaScript交互逻辑


$(function() {
 window.onload = function() {
  var lis = $('#tab li');
  var uls = $('#contents ul');
 
  lis.click(function() {
   var li_selected = $(this); //选中的li分类
   var num = li_selected.index(); //相对于同胞元素的位置
   lis.removeClass(); //清空liCSS属性
   li_selected.addClass('showed'); //选中li添加属性
   uls.css('display', 'none'); //隐藏所有ul标签
   uls.eq(num).css('display', 'block'); //展示选中的li所对应的ul内容
  })
 }
});

效果展示

最终实现的界面效果如下图所示。

Tab切换功能概述

作者最新文章