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弹性伸缩布局之box布局
Jul 12 HTML / CSS
CSS3的transition和animation的用法实例介绍
Aug 20 HTML / CSS
实例讲解CSS3中的box-flex弹性盒属性布局
Jun 09 HTML / CSS
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
Jan 17 HTML / CSS
CSS Houdini实现动态波浪纹效果
Jul 30 HTML / CSS
突袭HTML5之Javascript API扩展4—拖拽(Drag/Drop)概述
Jan 31 HTML / CSS
HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等
May 08 HTML / CSS
html5 Canvas实现图片旋转的示例
Jan 15 HTML / CSS
canvas拼图功能实现代码示例
Nov 21 HTML / CSS
HTML5实现无刷新修改URL的方法
Nov 14 HTML / CSS
AmazeUI折叠式卡片布局,整合内容列表、表格组件实现
Aug 20 HTML / CSS
Css预编语言及区别详解
Apr 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
聊天室php&amp;mysql(五)
2006/10/09 PHP
CMS中PHP判断系统是否已经安装的方法示例
2014/07/26 PHP
wamp安装后自定义配置的方法
2014/08/23 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
javascript onmouseout 解决办法
2010/07/17 Javascript
JS实现为表格动态添加标题的方法
2015/03/31 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
通过jsonp获取json数据实现AJAX跨域请求
2017/01/22 Javascript
浅谈ECMAScript6新特性之let、const
2017/08/02 Javascript
import与export在node.js中的使用详解
2017/09/28 Javascript
vue+element 模态框表格形式的可编辑表单实现
2019/06/07 Javascript
jQuery中DOM操作原则实例分析
2019/08/01 jQuery
JavaScript实现滑动门效果
2020/01/18 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
2020/10/13 Javascript
[27:02]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第三场
2014/05/24 DOTA
[03:11]DOTA2上海特锦赛小组赛第一日recap精彩回顾
2016/02/28 DOTA
全面了解Nginx, WSGI, Flask之间的关系
2018/01/09 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
python把数组中的数字每行打印3个并保存在文档中的方法
2018/07/17 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
Flask模板引擎之Jinja2语法介绍
2019/06/26 Python
Django Path转换器自定义及正则代码实例
2020/05/29 Python
英国的知名精品百货公司:House of Fraser(福来德)
2016/08/14 全球购物
新西兰最大的在线设计师眼镜店:SmartBuyGlasses新西兰
2017/10/20 全球购物
HomeAway澳大利亚:预订你的度假屋,公寓、度假村、别墅等
2019/02/20 全球购物
迪士尼西班牙官方网上商店:ShopDisney西班牙
2020/02/02 全球购物
两道JAVA笔试题
2016/09/14 面试题
幼儿园春游活动方案
2014/01/19 职场文书
亲戚结婚的请假条
2014/02/11 职场文书
大学生就业自荐书
2014/06/16 职场文书
毕业实习感受与体会
2015/05/26 职场文书
五年级作文之想象作文
2019/10/30 职场文书
vue基于Teleport实现Modal组件
2021/05/31 Vue.js
15个值得收藏的JavaScript函数
2021/09/15 Javascript
使用CSS自定义属性实现骨架屏效果
2022/06/21 HTML / CSS