html选项卡原理,实用!纯CSS3实现的内容选项卡(Content Tabs)4个实例
之前我做内容选项卡(Content Tabs)的时候,会用到一些小图片来区隔,那样虽然能达到理想的效果,但是维护起来却不太容易,因为需要更改图片。今天我将介绍用纯CSS3实现的内容选项卡(Content Tabs)4个实例,在本教程中,我们将使用单选按钮以及:checked伪类和同级组合器来实现一些简单的CSS3内容选项卡,效果很好,非常实用,值得收藏。
纯CSS3实现的内容选项卡(Content Tabs)
内容选项卡是Web设计中非常常见且熟悉的元素,通常它们非常有用。
实例一
实例二
实例三
实例四
标记
我们将使用input元素连接具有类内容(class content)的分隔。内容分隔包括所有“标签页(tab pages)”。对于每个input元素,我们将有一个label元素。所有标签的样式将类似于标签。
关于我们
联系方式
广告服务
免责声明
Some content
Some content
Some content
Some content
每个input元素都有一个值,我们可以通过添加checked的属性来使input默认为选中状态。
CSS
我们需要做的第一件事是定义一些尺寸并通过将input的不透明度设置为0来隐藏它们:tabs {
position: relative;
margin: 40px auto;
width: 750px;
}
.tabs input {
position: absolute;
z-index: 1000;
width: 120px;
height: 40px;
left: 0px;
top: 0px;
opacity: 0;
cursor: pointer;
}
.tabs input#tab-2{
left: 120px;
}
.tabs input#tab-3{
left: 240px;
}
.tabs input#tab-4{
left: 360px;
}
input将覆盖label,看起来好像我们单击了标签(label),但实际上我们正在单击输入(input),这是一个技巧,也可以在移动浏览器中使用。
接下来,通过为标签(label)定义一些整洁的样式,使标签看起来像标签。请注意,每个标签都有不同的z-index。盒子阴影将为选项卡增加深度和真实感。.tabs label {
background: linear-gradient(top, #5ba4a4 0%,#4e8c8a 100%);
font-size: 15px;
line-height: 40px;
height: 40px;
position: relative;
padding: 0 20px;
float: left;
display: block;
width: 80px;
color: #385c5b;
letter-spacing: 1px;
text-transform: uppercase;
font-weight: bold;
text-align: center;
text-shadow: 1px 1px 1px rgba(255,255,255,0.3);
border-radius: 3px 3px 0 0;
box-shadow: 2px 0 2px rgba(0,0,0,0.1), -2px 0 2px rgba(0,0,0,0.1);
}
.tabs input:hover + label {
background: #5ba4a4;
}
.tabs label:first-of-type {
z-index: 4;
box-shadow: 2px 0 2px rgba(0,0,0,0.1);
}
.tab-label-2 {
z-index: 3;
}
.tab-label-3 {
z-index: 2;
}
.tab-label-4 {
z-index: 1;
}
由于我们不希望显示框阴影的底部,因此我们将使用:after伪元素将其覆盖,其中不包含任何内容:.tabs label:after {
content: '';
background: #fff;
position: absolute;
bottom: -2px;
left: 0;
width: 100%;
height: 2px;
display: block;
}
当我们单击一个选项卡(label)时,它的样式和颜色将与其他样式不同,重要的是要确保“已选中(checked)”标签将位于选项卡中所有其他层的顶部。因此,我们将为其赋予最高的z-index:.tabs input:checked + label {
background: #fff;
z-index: 6;
}
如前所述,内容分区将包含所有标签页,我们将其z-index设置为5,使其在所选标签下。这样,内容区域的盒子阴影将覆盖所有其他标签。
在内容区域内,有四个分区,每个分区都有自己的内容。默认情况下(当未选择/单击它们各自的标签时),我们希望它们被隐藏。因此,我们将不透明度设置为零,将z-index设置为1。我们不能使用display:none属性,因为transitions不支持该属性。.content {
background: #fff;
position: relative;
width: 100%;
height: 370px;
z-index: 5;
box-shadow: 0 -2px 3px -2px rgba(0,0,0,0.2), 0 2px 2px rgba(0,0,0,0.1);
border-radius: 0 3px 3px 3px;
}
.content div {
position: absolute;
top: 0;
left: 0;
padding: 10px 40px;
z-index: 1;
opacity: 0;
transition: all linear 0.1s;
}
.content div h2,
.content div h3{
color: #398080;
}
.content div p {
font-size: 14px;
line-height: 22px;
font-style: italic;
text-align: left;
margin: 0;
color: #777;
padding-left: 15px;
font-family: Cambria, Georgia, serif;
border-left: 8px solid rgba(63,148,148, 0.1);
}
当我们希望某个内容出现(单击标签)时,我们将不透明度设置为1并提高z-index,因为我们希望该内容划分位于所有其他内容之上:.tabs input.tab-selector-1:checked ~ .content .content-1,
.tabs input.tab-selector-2:checked ~ .content .content-2,
.tabs input.tab-selector-3:checked ~ .content .content-3,
.tabs input.tab-selector-4:checked ~ .content .content-4 {
z-index: 100;
opacity: 1;
transition: all ease-out 0.2s 0.1s;
}
在本教程中,介绍了将内容淡入/淡出的基本示例。您可以在演示中找到更多样式和效果。
html选项卡原理,实用!纯CSS3实现的内容选项卡(Content Tabs)4个实例相关推荐
- 在html中选项卡怎么做,纯css3制作选项卡
继上一篇文章后,突发奇想利用纯粹的css3和radio的特性来打造一个选项卡切换的效果 普通的选项卡效果一般分为html+css+js来制作 步骤如下: html做布局 css做样式 js添加切换效果 ...
- 推荐10款纯css3实现的实用按钮
在2014年的双11即将来临之季,爱编程小编为大家整理10款纯css3实现的按钮.希望这对坚守在前端的码农们有所帮助.亲,如果你有好的资源也可在本文留言,让从事编码的程序员们抱团.工作更轻松. No1 ...
- 纯CSS3文字 渐变内发光投影效果
今天群上面同志们在讨论css3内发光效果,自己也就研究一下,写了个效果出来,涉及css3投影,渐变,蒙版,伪类等知识点,现在写下设计思路,仅供参考.发个效果图大家看先: 一般我们都是用css3的box ...
- 基于纯 CSS3 技术实现美观的标签云效果
标签云是博客的标配功能,能够清晰的呈现博客的各个关键词和主题.在这个效果中,您将学习如何使用 CSS3 技术创建一个效果精美的标签云效果. 作为实验项目,使用了 CSS3 渐变,阴影和最重要的的 CS ...
- 纯CSS3实现宽屏二级下拉菜单
今天我们要来分享一款基于纯CSS3的宽屏二级下拉菜单,这款菜单的子菜单在展开的时候是很宽敞的,菜单项中可以自定义格式的内容,非常实用,也很大气.由于是用纯CSS3实现,所以这款下拉菜单不用运行Java ...
- 8个超震撼的HTML5和纯CSS3动画源码
HTML5和CSS3之所以强大,不仅因为现在大量的浏览器的支持,更是因为它们已经越来越能满足现代开发的需要.Flash在几年之后肯定会消亡,那么HTML5和CSS3将会替代Flash.今天我们要给大家 ...
- php人物行走,非常震撼的纯CSS3人物行走动画
今天分享给大家的是一个用纯CSS3实现的人物行走动画,在没有使用JavaScript的情况下,用CSS3技术将人物行走的姿态描绘得非常逼真.其实动画实现的原理也是比较简单的,将人物行走时的状态分割成多 ...
- vue 图片被背景色覆盖_如何使用纯css3打造有点意思的故障艺术(附React/Vue加强组件版)...
前言 很早之前就看到国外很多酷炫的网站在实践"故障艺术", 或者错位动画", 感觉非常有意思, 现在APP端的抖音启动界面有着这种设计的影子, 作为一名用于探索未知的前端 ...
- 纯css3云彩动画效果
效果描述: 纯CSS3实现的云彩动画飘动效果 非常逼真实用 使用方法: 1.将body中的代码部分拷贝到你的页面中 2.引入对应的CSS文件即可 转载于:https://www.cnblogs.com ...
最新文章
- 记一次数据库查询语句的优化
- Leetcode 963. 最小面积矩形 II 解题思路及C++实现
- java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
- java 调用 Oracle 存储过程
- 鲲鹏展翅 力算未来 | openEuler操作系统源代码正式开放
- 百度测试开发提前批一面面经
- 【转】Tomcat中部署java web应用程序
- Re:[转]Microsoft .Net Remoting系列专题
- css3 media queries
- Android-EventBus 使用以及区别
- cp -r命令 linux什么意思,linux系统里cp指的是什么意思
- RESTfull API简单项目的快速搭建
- mysql 唯一性榆树_榆树有多少种
- WordPress的.htaccess优化技巧是什么
- 服务器physx性能测试,望穿秋水! PhysX卡性能测试首度曝光
- AE新手基础入门教程50套从新手到高手
- 计算机解决问题时有什么特点,问题解决
- 2021年11月_IEEE Transactions on Geoscience and Remote Sensing_科技前言热点调查表
- 弘晖资本募集完成人民币三期基金
- 人工智能如何帮助水电实现可持续发展
热门文章
- 以下哪个选项不是单例模式的优点_设计模式--单例
- 使用camtasia studio制作视频心得
- java实现英文文件单词搜索系统_Java实现 LeetCode 79 单词搜索
- HTC G13刷机手记
- smokeping+apache可视化监控网络(安装+配置)
- 国潮音乐酒吧介绍PPT模板
- 帝联的cdn_运营商“出手”终结CDN价格战,谁将第一家涨价?
- php开发工程师学费,青岛PHPWEB开发工程师班
- mysql 高并发 集群架构_一种高并发的GPU集群架构及其负载均衡方法技术
- 高中生计算机期刊,有方学者 高中生科研 ACM 学术会议发表 计算机方向