CSS3 Tab动画实例之背景切换动态效果


Posted in HTML / CSS onAugust 23, 2021

CSS 3 动画实例-Tab 背景切换的动态效果,具体代码如下所示:

<style type="text/css">
.slide-tabs { display:flex; position:relative; border:1px solid #3d3d3d; border-radius:10px; width:150px; overflow:hidden; background:#1c1c1c; }
.slide-tabs * { z-index:2; }
.slide-tabs input[type=radio] { display:none; }
.slide-tabs .tab { display:flex; align-items:center; justify-content:center; border-radius:9px; height:18px; font-size:12px; color:#fff; cursor:pointer; }
.slide-tabs .glider { display:flex; position:absolute; border-radius:9px; height:18px; background:#3da35a; z-index:1; transition:0.25s ease-out; } /*降低 z-index */

.slide-tabs input[type=radio]:checked + label { color:#fff; } /*按需修改当前项颜色*/
.slide-tabs input[type=radio]:nth-of-type(1):checked ~ .glider { transform:translateX(0%); }
.slide-tabs input[type=radio]:nth-of-type(2):checked ~ .glider { transform:translateX(100%); }
.slide-tabs input[type=radio]:nth-of-type(3):checked ~ .glider { transform:translateX(200%); }

.slide-tabs.tabs-3x .tab,
.slide-tabs.tabs-3x .glider { width:50px; }
</style>

<div class="slide-tabs tabs-3x">
    <input type="radio" id="radio-1" value="1" name="tabs" checked="checked">
    <label class="tab" for="radio-1">日</label>
    <input type="radio" id="radio-2" value="2" name="tabs">
    <label class="tab" for="radio-2">周</label>
    <input type="radio" id="radio-3" value="3" name="tabs">
    <label class="tab" for="radio-3">月</label>
    <span class="glider"></span>
</div>

代码如上,当点击“日、周、月”时,除了选中当前项,还会有下面的绿色块移动的效果。如下图:

CSS3 Tab动画实例之背景切换动态效果

巧妙一

使用 radio,这使得不需要 JavaScript 去设置当前项。

同时隐藏了 radio,而 label 的 for 属性使 label 与 radio 关联起来了,点了 label 相当于点了 radio。

巧妙二

transition 与 transform:translateX 的配合,其中 translateX 指 x 方向的位移。

到此这篇关于CSS3 Tab动画实例之背景切换动态效果的文章就介绍到这了,更多相关css3 tab背景切换效果内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
CSS3之多背景background使用示例
Oct 18 HTML / CSS
使用纯 CSS 创作一个脉动 loader效果的源码
Sep 28 HTML / CSS
基于HTML5 Canvas 实现弹出框效果
Jun 05 HTML / CSS
HTML5的文档结构和新增标签完全解析
Apr 21 HTML / CSS
HTML5 Canvas标签使用收录
Jul 07 HTML / CSS
HTML5中如何显示视频呢 HTML5视频播放demo
Jun 08 HTML / CSS
HTML5 Canvas绘制圆点虚线实例
Jan 01 HTML / CSS
使用HTML5 Canvas API控制字体的显示与渲染的方法
Mar 24 HTML / CSS
HTML5 拖放(Drag 和 Drop)详解与实例代码
Sep 14 HTML / CSS
HTML5 3D书本翻页动画的实现示例
Aug 28 HTML / CSS
吃透移动端 Html5 响应式布局
Dec 16 HTML / CSS
HTML如何让IMG自动适应DIV容器大小的实现方法
Feb 25 HTML / CSS
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
如何使用 resize 实现图片切换预览功能
Aug 23 #HTML / CSS
css中z-index: 0和z-index: auto的区别
Aug 23 #HTML / CSS
CSS Transition通过改变Height实现展开收起元素
Aug 07 #HTML / CSS
css3中transform属性实现的4种功能
Aug 07 #HTML / CSS
从QQtabBar看css命名规范BEM的详细介绍
Aug 07 #HTML / CSS
css实现两栏布局,左侧固定宽,右侧自适应的多种方法
Aug 07 #HTML / CSS
You might like
web方式ftp
2006/10/09 PHP
php 判断访客是否为搜索引擎蜘蛛的函数代码
2011/07/29 PHP
php图片的二进制转换实现方法
2014/12/15 PHP
php查询操作实现投票功能
2016/05/09 PHP
PHP获取input输入框中的值去数据库比较显示出来
2016/11/16 PHP
详解Yaf框架PHPUnit集成测试方法
2017/12/27 PHP
PHP代码加密的方法总结
2020/03/13 PHP
document.documentElement &amp;&amp; document.documentElement.scrollTop
2007/12/01 Javascript
js函数般调用正则
2008/04/08 Javascript
JavaScript中为什么null==0为false而null大于=0为true(个人研究)
2013/09/16 Javascript
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
2016/10/14 Javascript
微信小程序 scroll-view组件实现列表页实例代码
2016/12/14 Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
2017/03/13 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
Vuex 进阶之模块化组织详解
2018/01/12 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
2018/05/25 Javascript
JavaScript常用事件介绍
2019/01/21 Javascript
Vue 自定义指令实现一键 Copy功能
2019/09/16 Javascript
使用vue重构资讯页面的实例代码解析
2019/11/26 Javascript
ant design vue datepicker日期选择器中文化操作
2020/10/28 Javascript
浅析Python中的join()方法的使用
2015/05/19 Python
Python while、for、生成器、列表推导等语句的执行效率测试
2015/06/03 Python
如何在Python中编写并发程序
2016/02/27 Python
利用django如何解析用户上传的excel文件
2017/07/24 Python
Python实现简单网页图片抓取完整代码实例
2017/12/15 Python
python实现图书馆研习室自动预约功能
2018/04/27 Python
对python requests的content和text方法的区别详解
2018/10/11 Python
利用python+request通过接口实现人员通行记录上传功能
2021/01/13 Python
CSS3 linear-gradient线性渐变生成加号和减号的方法
2017/11/21 HTML / CSS
Fossil美国官网:化石手表、手袋、首饰及配饰
2019/02/17 全球购物
行政办公员自我评价分享
2013/12/14 职场文书
出差报告怎么写
2014/11/06 职场文书
土木工程生产实习心得体会
2016/01/22 职场文书
Nginx内网单机反向代理的实现
2021/11/07 Servers
关于MybatisPlus配置双数据库驱动连接数据库问题
2022/01/22 Java/Android
Redis+Lua脚本实现计数器接口防刷功能(升级版)
2022/02/12 Redis