先来看看效果图

利用纯CSS3实现tab选项卡切换示例-LMLPHP

CSS3伪类target
利用target的特性,可以实现纯css的tab效果切换

示例代码如下

代码如下:

   <style type="text/css">
        .tabmenu{
            position:absolute;
            top:-28px;
            left:144px;
            margin:0px;
        }
        .tabmenu li{
            display:inline-block;
        }
        .tabmenu li a{
            display:block;
            padding:5px 10px;
            margin:0 10px 0 0;
            border:1px solid #91a7b4;
            border-radius:5px 5px 0 0;
            background-color:#e3f1f8;
            color:#333;
            text-decoration: none;
            font-size:16px;
        }
        .tablist{
            position:relative;
            top:200px;
            margin:0 auto;
            width:600px;
            min-height:200px;
        }
        .tab_content{
            position:absolute;
            width:600px;
            height:170px;
            padding:15px;
            border:1px solid #91a7b4;
            border-radius:10px;
            box-shadow:0 2px 3px rgba(0,0,0,0,1);
            font-size:16px;
            line-height:16px;
            color:#666;
            background-color:#fff;
        }
        #tab1:target,#tab2:target,#tab3:target{
            z-index:1;
        }
    </style>
    <p class="tablist">
        <ul class="tabmenu">
            <li><a href="#tab1">tab1</a></li>
            <li><a href="#tab2">tab2</a></li>
            <li><a href="#tab3">tab3</a></li>
        </ul>
        <p id="tab1" class="tab_content">tab1</p>
        <p id="tab2" class="tab_content">tab2</p>
        <p id="tab3" class="tab_content">tab3</p>
    </p>
登录后复制

最关键的代码

代码如下:

#tab1:target,#tab2:target,#tab3:target{
    z-index:1;
}
登录后复制


先根据target的特性锚链接到对应的p,再根据z-index的属性,改变p的层级关系,从而实现tab的切换效果!

target兼容性
最后提一下兼容性问题:因为这是CSS3新特性,所以不兼容老版本的浏览器,例如IE678。

总结
以上就是这篇文章的全部内容,希望能对大家的学习或者工作带来一定的帮助,如果有疑问大家可以留言交流。


更多利用纯CSS3实现tab选项卡切换示例相关文章请关注Work网!


09-08 10:49