扫描二维码打开
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为下面这样:
<divclass="wrap"> <label> <span>home</span> <inputtype="radio"name="tab"checked> <div>home-page</div> </label> <label> <span>list</span> <inputtype="radio"name="tab"> <div>list-page</div> </label> <label> <span>news</span> <inputtype="radio"name="tab"> <div>news-page</div> </label> <label> <span>mine</span> <inputtype="radio"name="tab"> <div>mine-page</div> </label> </div>
重要的css,通过将input的width设为0使得input的那个小圆点不现实,又通过label的关联用导航项的点击实现input的checked,然后通过input:checked+div{display:block}实现相应div的显示。
<styletype="text/css"> *{margin:0;padding:0;} .wrap{ margin:20pxauto; width:403px; height:600px; border:1px solid brown; position: relative; } label{ width:100px; height:30px; float: left; text-align: center; line-height:30px; border-right:1px solid brown; border-bottom:1px solid brown; } label:nth-of-type(4){ border-right: none; } label span{ cursor: pointer; } label div{ width:403px; height:568px; position: absolute; left:0; top:31px; background:#eeeeee; display: none; } label input{ width:0; } input:checked+div{ display: block; } </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标签对应
最终代码如下:
<divclass="wrap"> <divclass="nav"> <ahref="#home">home</a> <ahref="#list">list</a> <ahref="#news">news</a> <ahref="#mine">mine</a> </div> <divclass="sh"> <divid="home">home-page</div> <divid="list">list-page</div> <divid="news">news-page</div> <divid="mine">mine-page</div> </div> </div>
css样式设置,即将类名为sh下的div设置为display:none;然后通过div:target{display:block}实现显示选中项
<styletype="text/css"> *{margin:0;padding:0} .wrap{ width:400px; height:600px; border:1px solid brown; margin:20pxauto; position: relative; } .nav{ width:100%; height:30px; } .nav a{ width:99px; height:30px; text-align: center; line-height:30px; border-right:1px solid brown; border-bottom:1px solid brown; float: left; text-decoration: none; color:black; } .sh{ width:400px; height:569px; position: absolute; left:0; top:31px; background:#eeeeee; } .sh div{ display: none; text-align: center; } .sh div:target{ display: block; } </style>
到此这篇关于最简单的实现tab切换的html代码的文章就介绍到这了,更多相关内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
Copyright 深圳市某某科技有限公司 版权所有. 备案号:粤ICP备98989988号