css实现tab切换效果

<div class="match-instruction">
			    <div id="tab2" class="mi-cont">奖项设置</div>
			    <div id="tab3" class="mi-cont">评审标准</div>
			    <div id="tab4" class="mi-cont">活动动态</div>
			    <div id="tab1" class="mi-cont active">参赛时间及方式</div>
			    <ul class="mi-tab">
			      <li><a href="#tab1"><span>参赛时间及方式</span></a></li>
			      <li><a href="#tab2"><span>奖项设置</span></a></li>
			      <li><a href="#tab3"><span>评审标准</span></a></li>
			      <li><a href="#tab4"><span>活动动态</span></a></li>
			    </ul>
			  </div>

上面是页面html结构,下面贴css样式代码

<style>
.match-instruction{position:relative; padding-top:1.9rem;}
div[id^="tab"]{color:#fff; display:none;}
#tab1:target,#tab2:target,#tab3:target,#tab4:target{display:block;}
#tab1.active{display:block;}
#tab2:target~#tab1,#tab3:target~#tab1,#tab4:target~#tab1{display:none;}
#tab1:target~.mi-tab li:nth-child(1),#tab2:target~.mi-tab li:nth-child(2),#tab3:target~.mi-tab li:nth-child(3),#tab4:target~.mi-tab li:nth-child(4){z-index:5; margin-top:0;}
#tab1:target~.mi-tab li:nth-child(1):after,#tab2:target~.mi-tab li:nth-child(2):after,#tab3:target~.mi-tab li:nth-child(3):after,#tab4:target~.mi-tab li:nth-child(4):after{border-bottom-width:1.9rem;}
#tab1:target~.mi-tab li a[href="#tab1"],#tab2:target~.mi-tab li a[href="#tab2"],#tab3:target~.mi-tab li a[href="#tab3"],#tab4:target~.mi-tab li a[href="#tab4"]{height:1.9rem; line-height:2.05rem;}
.mi-tab{height:1.9rem; position:absolute; left:0; top:0; right:0; margin-right:.8rem;}
.mi-tab li{float:left; width:31%; position:relative; background-color:#77c8df; z-index:4; margin-top:.3rem;}
.mi-tab li+li{width:23%; z-index:3; background-color:#a2ca64;}
.mi-tab li+li+li{z-index:2; background-color:#f0c55e;}
.mi-tab li+li+li+li{z-index:1; background-color:#90c89f;}
.mi-tab li:after{content:""; position:absolute; right:-.8rem; bottom:0; width:0; height:0; border-right:.8rem solid transparent; border-bottom:1.6rem solid #77c8df;}
.mi-tab li+li:after{border-bottom-color:#a2ca64;}
.mi-tab li+li+li:after{border-bottom-color:#f0c55e;}
.mi-tab li+li+li+li:after{border-bottom-color:#90c89f;}
.mi-tab a{display:block; height:1.6rem; line-height:1.75rem; font-size:.65rem; color:#373534; text-align:center; margin-right:-.4rem;}
.mi-tab a span{position:relative; z-index:1;}
.mi-tab li:first-child{z-index:5; margin-top:0;}
.mi-tab li:first-child:after{border-bottom-width:1.9rem;}
.mi-tab li:first-child a{height:1.9rem; line-height:2.05rem;}
#tab2:target~.mi-tab li:first-child,#tab3:target~.mi-tab li:first-child,#tab4:target~.mi-tab li:first-child{z-index:4; margin-top:.3rem;}
#tab2:target~.mi-tab li:first-child:after,#tab3:target~.mi-tab li:first-child:after,#tab4:target~.mi-tab li:first-child:after{border-bottom-width:1.6rem;}
#tab2:target~.mi-tab li:first-child a,#tab3:target~.mi-tab li:first-child a,#tab4:target~.mi-tab li:first-child a{height:1.6rem; line-height:1.75rem;}
</style>

这个css实现tab切换效果在实际项目中并不实用,这里只是单纯的提供一种css实现方案,效果如下图

时间: 2024-10-24 04:22:45

css实现tab切换效果的相关文章

CSS3 :target伪类实现Tab切换效果

用:target伪类实现Tab切换效果真的非常简单!简单到什么程度呢?它只需要下面这些代码. style.css: .song-info { position: absolute; background: #fff; } #song-info:target, #song-lyricCN:target, #song-lyricEN:target { z-index: 1; } html代码: <div class="song-nav"> <ul class="

CSS3属性之 target伪类实现Tab切换效果

CSS3 :target伪类用来改变页面中锚链接URL所指向的ID样式 代码示例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>target伪类实现Tab切换效果</title> <style type="text/css"> p{ bond:li; } .tablis

JavaScript - Tab切换效果

简单Tab切换效果 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&

实用CSS3属性之 :target伪类实现Tab切换效果

CSS3 :target伪类用来改变页面中锚链接URL所指向的ID样式,例如你要改变描链接指向#tab的元素字体颜色为蓝色,哪么你可以这样写成#tab:target {color:blue} 浏览器支持: 不支持IE8及以下的IE版本,IE9支持这个属性,其它非IE内核浏览器如:Firefox.Chrome.等这些浏览器都支持. 用法: :target伪类与:hover.:link.:visited.:focus等伪类的用法一样 :target {color:blue} 实例:CSS3 :tar

jquery写的tab切换效果 非常简单

自己写的一款 tab切换效果,比较简单,适合新手 <style type="text/css">*{margin:0; padding:0; font-size:12px;}ul{list-style:none;}ul li a{text-decoration:none; color:#000000;}ul li a:hover{text-decoration:underline; color:#cc0000;}#con{margin:50px auto; width:96

Vue.js实现tab切换效果

利用Vue实现简易tab切换效果 1.1 在我们平时浏览网站的时候,经常看到的特效有图片轮播.导航子菜单的隐藏.tab标签的切换等等.这段时间学习了vue后,开始要写出一些简单的特效. 1.2 实现思路是点击上方的标题,下方的内容随之发生改变,上方和下方用的是两个块,是兄弟节点,所以需要点击tab标题和下方内容一一对应,基予两个模块若下标相同是一个内容实现的. 1.3 tab切换第一步先要把HTML写好,这个第一步很关键,主要分为两块结构 <div id="app"> &l

基于jQuery图片缩放tab切换效果

基于jQuery图片缩放tab切换效果 上图: 主要效果是一个切换的效果,鼠标移动进行效果切换,兼容IE8.360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗等 预览地址:http://www.qhttl.com/content/view/2014/07/23/jiaoben92/jiaoben92/index.html 基于jQuery图片缩放tab切换效果

Tab切换效果(多个参数)

前几天我写了这个切换效果,但是是只传一个值的函数,经过各位大牛的指点发现还是有些问题的,于是经过我不懈的努力,完善了代码: 传递多个参数替代函数里面包含事件这个问题: html代码: 1 <div class="content"> 2 <div class="tab1 cf"> 3 <ul> 4 <li class="tab_li">第一项</li> 5 <li class=&qu

教你如何用纯CSS写Tab切换

说到Tab切换,你可能首先想到的就是使用jQuery,短短几行代码就可以轻松搞定一个Tab切换. 而今天所要分享的,是使用 0 行JS代码来实现Tab切换! 具体效果如下: Tab切换 方法一:模拟单选框原理 该方法大致原理如下: 当用户点击label元素时,该label所绑定的input单选框就会被选中,同时通过使用CSS选择器让被选中的input元素之后的label和.content元素都加上相应的样式. 具体如何实现呢?请耐心往下看... 1. HTML结构 <!--HTML--> &l