• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    html 实现tab切换的示例代码

    发布者: 怀142 | 发布时间: 2025-8-13 07:45| 查看数: 41| 评论数: 0|帖子模式

    tab切换在项目中也算是常用技术,一般实现tab切换都用js或者jq实现,今天介绍两种只用css实现tab切换方法:
    方法一:
    原理:通过label标签的关联属性和input的单选类型实现相应div的显示
    1.创建一个类名为wrap的div当作容器
    2.创建四个label标签,这将作为tab切换项
    3.在每一个label中创建一个span标签(导航内容),input标签(实现选中于取消选中)type类型为radio,还要创建一个div作为这个导航项被点中是显示内容框,
    这里要注意的是input标签的name必须是相同的,我这边取名叫tab
    最终HTML为下面这样:
    1. <div class="wrap">
    2.     <label>
    3.         <span>home</span>
    4.         <input type="radio" name="tab" checked>
    5.         <div>home-page</div>
    6.     </label>
    7.     <label>
    8.         <span>list</span>
    9.         <input type="radio" name="tab">
    10.         <div>list-page</div>
    11.     </label>
    12.     <label>
    13.         <span>news</span>
    14.         <input type="radio" name="tab">
    15.         <div>news-page</div>
    16.     </label>
    17.     <label>
    18.         <span>mine</span>
    19.         <input type="radio" name="tab">
    20.         <div>mine-page</div>
    21.     </label>
    22. </div>
    复制代码
    重要的css,通过将input的width设为0使得input的那个小圆点不现实,又通过label的关联用导航项的点击实现input的checked,然后通过input:checked+div{display:block}实现相应div的显示
    1. <style type="text/css">
    2.         *{margin: 0;padding: 0;}
    3.         .wrap{
    4.             margin: 20px auto;
    5.             width: 403px;
    6.             height: 600px;
    7.             border:1px solid brown;
    8.             position: relative;
    9.         }
    10.         label{
    11.             width: 100px;
    12.             height: 30px;
    13.             float: left;
    14.             text-align: center;
    15.             line-height:30px;
    16.             border-right: 1px solid brown;
    17.             border-bottom: 1px solid brown;
    18.         }
    19.         label:nth-of-type(4){
    20.             border-right: none;
    21.         }
    22.         label span{
    23.             cursor: pointer;
    24.         }
    25.         label div{
    26.             width: 403px;
    27.             height: 568px;
    28.             position: absolute;
    29.             left: 0;
    30.             top: 31px;
    31.             background: #eeeeee;
    32.             display: none;
    33.         }
    34.         label input{
    35.             width: 0;
    36.         }
    37.         input:checked+div{
    38.             display: block;
    39.         }
    40.     </style>
    复制代码
    方法二:
    原理:通过a标签的锚点实现切换,也就a的href的路径是要切换div的id
    1.创建一个类名为wrap的div作为容器
    2.创建一个类名为nav的div,在里边创建四个a标签,a标签的href分别是要切换到的div的id
    3.创建一个和nav兄弟关系的类名为sh的容器用来放置切换的div
    4.创建显示内容div,id分别和上面a标签对应
    最终代码如下:
    1. <div class="wrap">
    2.     <div class="nav">
    3.         <a href="#home">home</a>
    4.         <a href="#list">list</a>
    5.         <a href="#news">news</a>
    6.         <a href="#mine">mine</a>
    7.     </div>
    8.     <div class="sh">
    9.         <div id="home">home-page</div>
    10.         <div id="list">list-page</div>
    11.         <div id="news">news-page</div>
    12.         <div id="mine">mine-page</div>
    13.     </div>
    14. </div>
    复制代码
    css样式设置,即将类名为sh下的div设置为display:none;然后通过div:target{display:block}实现显示选中项
    1. <style type="text/css">
    2.         *{margin: 0;padding: 0}
    3.         .wrap{
    4.             width: 400px;
    5.             height: 600px;
    6.             border: 1px solid brown;
    7.             margin: 20px auto;
    8.             position: relative;
    9.         }
    10.         .nav{
    11.             width: 100%;
    12.             height: 30px;
    13.         }
    14.         .nav a{
    15.             width: 99px;
    16.             height: 30px;
    17.             text-align: center;
    18.             line-height: 30px;
    19.             border-right: 1px solid brown;
    20.             border-bottom: 1px solid brown;
    21.             float: left;
    22.             text-decoration: none;
    23.             color:black;
    24.         }
    25.         .sh{
    26.             width: 400px;
    27.             height: 569px;
    28.             position: absolute;
    29.             left: 0;
    30.             top:31px;
    31.             background: #eeeeee;
    32.         }
    33.         .sh div{
    34.             display: none;
    35.             text-align: center;
    36.         }
    37.         .sh div:target{
    38.             display: block;
    39.         }
    40.     </style>
    复制代码
    到此这篇关于html 实现tab切换的示例代码的文章就介绍到这了,更多相关html tab切换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表