纯CSS3实现的Tab选项卡三个实例分享

实例一:

下面我们一起看看用纯CSS来制作一个选项卡的方法。使用纯CSS3来制作Tab的好处除了不需要使用jQuery外,还支持添加一些细微的CSS3交互,使Tab展示效果不错。

代码

这里主要使用表单的单选按钮来实现这个TAB显示和隐藏,首页tab里的内容默认隐藏,如果单选按钮为选中状态(checked)就显示内容。具体请看下面代码。

关于兼容性,因为是用CSS3来制作的,所以如果不支持CSS3的浏览将会出现不兼容的情况。

HTML代码

<ul class="tabs">
<li>
<input type="radio" name="tabs" id="tab1" checked />
<label for="tab1">选项卡 1</label>
<div id="tab-content1" class="tab-content">
<p>选项卡内容 1</p>
</div>
</li>
<li>
<input type="radio" name="tabs" id="tab2" />
<label for="tab2">选项卡 2</label>
<div id="tab-content2" class="tab-content">
<p>选项卡内容 2</p>
</div>
</li>
</ul>

CSS代码

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
body {
  padding: 20px;
  text-align: left;
  font-family: Lato;
  color: #fff;
  background: #9b59b6;
}
.tabs {
  width: 650px;
  float: none;
  list-style: none;
  position: relative;
  margin: 80px 0 0 10px;
  text-align: left;
}
.tabs li {
  float: left;
  display: block;
}
.tabs input[type="radio"] {
  position: absolute;
  top: -9999px;
  left: -9999px;
}
.tabs label {
  display: block;
  padding: 14px 21px;
  border-radius: 2px 2px 0 0;
  font-size: 20px;
  font-weight: normal;
  text-transform: uppercase;
  background: #8e44ad;
  cursor: pointer;
  position: relative;
  top: 4px;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.tabs label:hover {
  background: #703688;
}
.tabs .tab-content {
  z-index: 2;
  display: none;
  overflow: hidden;
  width: 100%;
  font-size: 17px;
  line-height: 25px;
  padding: 25px;
  position: absolute;
  top: 53px;
  left: 0;
  background: #612e76;
}
.tabs [id^="tab"]:checked + label {
  top: 0;
  padding-top: 17px;
  background: #612e76;
}
.tabs [id^="tab"]:checked ~ [id^="tab-content"] {
  display: block;
}

使用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}

下面简单介绍下如何用csse :target来制作一个无JavaScript的tab切换效果

HTML代码:

<div class="tablist"> <ul class="tabmenu"> <li><a href="#tab1">标签一</a></li> <li><a href="#tab2">标签二</a></li> <li><a href="#tab3">标签三</a></li> </ul> <div id="tab1" class="tab_content">tab1 content</div> <div id="tab2" class="tab_content">tab2 content</div> <div id="tab3" class="tab_content">tab3 content</div> </div>

CSS代码:

.tab_content {
    position: absolute;
}
#tab1:target, #tab2:target, #tab3:target {
    z-index: 1;
}

原理其实很简单,就是把tab元素设为绝对对定位absolute,再通过:target伪类改变它们的层级(z-index)。

使用css3实现的tab选项卡代码分享

给大家带来一款纯css3实现的tab选项卡。单击左侧的选项的时候,右侧内容以动画的形式展示。效果图如下:

实现的代码。

html代码:

<div class="night-tabs night-tabs-color-default night-tabs-animation-slide-right night-tabs-position-vleft">
<!--Tab 1-->
<input type="radio" name="night-tabs" checked="" id="tab1" class="content1">
<!--Checked= Tab shown-->
<label for="tab1">
<!--Modify icon and name-->
<span><span><em class="fa fa-home"></em>Night Tabs</span></span>
</label>
<!--Tab 2-->
<input type="radio" name="night-tabs" id="tab2" class="content2">
<label for="tab2">
<!--Modify icon and name-->
<span><span><em class="fa fa-font"></em>Typography</span></span>
</label>
<!--Tab 3-->
<input type="radio" name="night-tabs" id="tab3" class="content3">
<label for="tab3">
<!--Modify icon and name-->
<span><span><em class="fa fa-list"></em>Grid Systen</span></span>
</label>
<!--Tab 4-->
<input type="radio" name="night-tabs" id="tab4" class="content4">
<label for="tab4">
<!--Modify icon and name-->
<span><span><em class="fa fa-legal"></em>License</span></span>
</label>
<!--Content-->
<ul class="night-tabs-content">
<!--Tab 1-->
<li class="content1">
<div class="content-1-content">
<!--Content goes here-->
<h1 class="h1">
Night Tabs</h1>
<p>
<span class="dropcap">N</span>ight Tabs (formerly TrueTabs) is an extensive CSS3
Tabbed Content snippet. It started out small as a typical CSS Tabs snippet, but
I have expanded it greatly. It offers many features, and can be easily modified
to fit your needs. Some of the features include: Cross browser support, preset animations,
colors, and layouts, a responsive grid system, and a typography set, among other
things.</p>
</div>
</li>
<!--Tab 2-->
<li class="content2">
<div class="content-2-content">
<!--Content goes here-->
<h1 class="h1">
Custom Fonts</h1>
<h2 class="h2">
Open Sans Light</h2>
<h3 class="h3">
<em class="fa fa-check"></em>FontAwesome</h3>
<p>
<h2 class="h2">
Paragraphs and Quotes</h2>
<blockquote class="blockquote">
Maecenas tincidunt nunc est, nec pharetra odio porta ac. Morbi cursus lacinia neque,
tristique tincidunt ipsum tincidunt a.
</blockquote>
<div class="well">
<p>
Maecenas tincidunt nunc est, nec pharetra odio porta ac. Morbi cursus lacinia neque,
tristique tincidunt ipsum tincidunt a.</p>
</div>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada rutrum
felis, quis imperdiet nisl finibus id. Etiam commodo vitae purus a lobortis. Donec
lacinia dapibus metus nec feugiat. Integer blandit tellus vel dapibus efficitur.
Nulla placerat sollicitudin laoreet. Maecenas fermentum eros diam, at blandit lectus
volutpat ac.Proin ornare mauris dui, semper condimentum urna blandit non. Vestibulum
ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Ut
scelerisque justo sit amet sem commodo, ac porta arcu auctor.</p>
<h3 class="h3">
Unordered Lists</h3>
<ul class="night-tabs-unordered-list">
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit.
<ul class="night-tabs-unordered-list">
<li>Nulla vitae lacus sed dui fringilla elementum eu id eros.</li>
<li>Vivamus euismod mauris sit amet iaculis porttitor.</li>
<li>Donec condimentum massa non elit lobortis, a ultrices ante vulputate.</li>
</ul>
</li>
<li>Nulla vitae lacus sed dui fringilla elementum eu id eros.</li>
<li>Vivamus euismod mauris sit amet iaculis porttitor.</li>
<li>Donec condimentum massa non elit lobortis, a ultrices ante vulputate.</li>
</ul>
<h3 class="h3">
Ordered Lists</h3>
<ol class="night-tabs-ordered-list">
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit.
<ol class="night-tabs-ordered-list">
<li>Nulla vitae lacus sed dui fringilla elementum eu id eros.</li>
<li>Vivamus euismod mauris sit amet iaculis porttitor.</li>
<li>Donec condimentum massa non elit lobortis, a ultrices ante vulputate.</li>
</ol>
</li>
<li>Nulla vitae lacus sed dui fringilla elementum eu id eros.</li>
<li>Vivamus euismod mauris sit amet iaculis porttitor.</li>
<li>Donec condimentum massa non elit lobortis, a ultrices ante vulputate.</li>
</ol>
<div class="text-right">
<em>Typography Set</em>
</div>
</div>
</li>
<!--Tab 3-->
<li class="content3">
<div class="content-3-content">
<!--Content goes here-->
<div class="grid-row">
<div class="grid-column grid-column-6">
<h2 class="h2">
HTML5</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ante nisl, condimentum
nec dolor viverra, dignissim convallis est. In commodo rhoncus augue, a euismod
felis placerat ut. Ut ullamcorper libero tortor, ut semper lectus congue ut. Morbi
pulvinar, nisi at pharetra scelerisque, nibh magna ornare augue, vel aliquet ipsum
ante eu sem. Maecenas id est risus. Nulla facilisis dui molestie euismod mollis.
Duis vehicula elementum justo in porta. Maecenas erat lectus, finibus vel lectus
non, consequat ultricies dolor. Nunc ultricies quam in purus facilisis, porttitor
blandit odio volutpat. Sed sed posuere lectus, sit amet rutrum est. Duis porttitor
purus blandit, lacinia nibh quis, ultricies augue.</p>
</div>
<div class="grid-column grid-column-6">
<h2 class="h2">
CSS3</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ante nisl, condimentum
nec dolor viverra, dignissim convallis est. In commodo rhoncus augue, a euismod
felis placerat ut. Ut ullamcorper libero tortor, ut semper lectus congue ut. Morbi
pulvinar, nisi at pharetra scelerisque, nibh magna ornare augue, vel aliquet ipsum
ante eu sem. Maecenas id est risus. Nulla facilisis dui molestie euismod mollis.
Duis vehicula elementum justo in porta. Maecenas erat lectus, finibus vel lectus
non, consequat ultricies dolor. Nunc ultricies quam in purus facilisis, porttitor
blandit odio volutpat. Sed sed posuere lectus, sit amet rutrum est. Duis porttitor
purus blandit, lacinia nibh quis, ultricies augue.</p>
</div>
</div>
<div class="grid-row">
<div class="grid-column grid-column-12">
<h2 class="h2">
NO JavaScript</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ante nisl, condimentum
nec dolor viverra, dignissim convallis est. In commodo rhoncus augue, a euismod
felis placerat ut. Ut ullamcorper libero tortor, ut semper lectus congue ut. Morbi
pulvinar, nisi at pharetra scelerisque, nibh magna ornare augue, vel aliquet ipsum
ante eu sem. Maecenas id est risus. Nulla facilisis dui molestie euismod mollis.
Duis vehicula elementum justo in porta. Maecenas erat lectus, finibus vel lectus
non, consequat ultricies dolor. Nunc ultricies quam in purus facilisis, porttitor
blandit odio volutpat. Sed sed posuere lectus, sit amet rutrum est. Duis porttitor
purus blandit, lacinia nibh quis, ultricies augue.</p>
</div>
<div class="text-right">
<em>Night Tabs - CSS3 Tabbed Content</em>
</div>
</div>
</div>
</li>
<!--Tab 4-->
<li class="content4">
<div class="content-4-content">
<!--Content goes here-->
<h1 class="h1">
Night Tabs - v0.2.0</h1>
<p>
Coded by Jason Shi under the MIT License.</p>
</div>
</li>
</ul>
</div>

css3代码:

/*------------------------------------*/
#RESET
/*------------------------------------*/
.night-tabs a,
.night-tabs div,
.night-tabs em,
.night-tabs img,
.night-tabs ul,
.night-tabs label,
.night-tabs li,
.night-tabs ol,
.night-tabs p,
.night-tabs span,
.night-tabs ul {
/* ->>> Structure <<<-*/
border: 0;
margin: 0;
padding: 0;
position: relative;
box-sizing: border-box /* CSS3 */
}
/*------------------------------------*/
#TAB LABELS
/*------------------------------------*/
.night-tabs {
/* ->>> Structure <<<-*/
margin: 0 auto; /* Center Night Tabs; optional. */
width: 70%; /* Define width. */
font: 300 0px/1.5
"Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; /* Typography */
color: #ecf0f1 /* Colors */
}
.night-tabs input {display: none} /* Hide Checkbox. */
.night-tabs input:checked+label {cursor: default} /* Set cursor type. */
.night-tabs label {
/* ->>> Structure <<<-*/
display: inline-block;
z-index: 1;
border-bottom: 2px solid #353535;
border-right: 1px solid #444;
border-left: 1px solid #222;
/* ->>> Typography <<<-*/
cursor: pointer;
font-size: 18px;
line-height: 40px;
text-align: left;
/* ->>> CSS3 <<<-*/
-webkit-user-select: none; /* ->>> Prevents double-click selection. <<<-*/
-moz-user-select: none;
-ms-user-select: none
}
.night-tabs label span {
display: block;
padding: .2em;
background: #404040
}
.night-tabs label span span {
/* Structure */
border: 2px solid transparent;
padding: 0 1em;
/* CSS3*/
-webkit-transition: background .4s;
transition: background .4s
}
/*------------------------------------*/
#TAB CONTENT
/*------------------------------------*/
.night-tabs .night-tabs-content {
display: block; /* Structure */
font-size: 18px /* Typography */
}
.night-tabs .night-tabs-content > li {
/* Structure */
left: 0;
opacity: 0;
overflow: auto;
padding: 1em 1.5em; /* ->>> Spacing for content. <<<-*/
position: absolute;
top: 0;
visibility: hidden;
width: 100%;
background: #404040; /* Colors */
/* CSS3 */
-webkit-transform-origin: 0 0;
-ms-transform-origin: 0 0;
transform-origin: 0 0;
-webkit-transition: all .8s .1s; /* ->>> Intensity of tab effects. <<<-*/
transition: all .8s .1s
}
@charset "UTF-8";
/**
* CONTENTS - effects.css
*
* GENERAL STYLES
* Setup for tab effects.
*
* SLIDE EFFECTS
* Basic slide effects from different directions.
*
* ADVANCED EFFECTS
* Advanced effects (scale, rotate, flip)
*
*/
/*------------------------------------*/
#GENERAL STYLES
/*------------------------------------*/
.night-tabs>.content1:checked~ul>.content1,
.night-tabs>.content2:checked~ul>.content2,
.night-tabs>.content3:checked~ul>.content3,
.night-tabs>.content4:checked~ul>.content4 {
/* Structure */
opacity: 1;
visibility: visible;
/* CSS3 */
-webkit-transform: none;
-ms-transform: none;
transform: none
}
/*------------------------------------*/
#SLIDE EFFECTS
/*------------------------------------*/
/* ->>> Slide Up <<<-*/
.night-tabs-animation-slide-up .night-tabs-content > li {
-webkit-transform: translateY(30px);
-ms-transform: translateY(30px);
transform: translateY(30px)
}
/* ->>> Slide Down <<<-*/
.night-tabs-slide-down .night-tabs-content > li {
-webkit-transform: translateY(-30px);
-ms-transform: translateY(-30px);
transform: translateY(-30px)
}
/* ->>> Slide Left <<<-*/
.night-tabs-animation-slide-left .night-tabs-content > li {
-webkit-transform: translateX(-30px);
-ms-transform: translateX(-30px);
transform: translateX(-30px)
}
/* ->>> Slide Right <<<-*/
.night-tabs-animation-slide-right .night-tabs-content > li {
-webkit-transform: translateX(30px);
-ms-transform: translateX(30px);
transform: translateX(30px)
}
/* ->>> Slide Up + Left <<<-*/
.night-tabs-slide-up-left .night-tabs-content > li {
-webkit-transform: translate(-30px, -30px);
-ms-transform: translate(-30px, -30px);
transform: translate(-30px, -30px)
}
/* ->>> Slide Up + Right <<<-*/
.night-tabs-animation-slide-up-right .night-tabs-content > li {
-webkit-transform: translate(30px, -30px);
-ms-transform: translate(30px, -30px);
transform: translate(30px, -30px)
}
/* ->>> Slide Down + Left <<<-*/
.night-tabs-animation-slide-down-left .night-tabs-content > li {
-webkit-transform: translate(-30px, 30px);
-ms-transform: translate(-30px, 30px);
transform: translate(-30px, 30px)
}
/* ->>> Slide Down + Right <<<-*/
.night-tabs-animation-slide-down-right .night-tabs-content > li {
-webkit-transform: translate(30px, 30px);
-ms-transform: translate(30px, 30px);
transform: translate(30px, 30px)
}
/*------------------------------------*/
#SLIDE EFFECTS
/*------------------------------------*/
/* ->>> Rotate <<<-*/
.night-tabs-rotate > ul > li {
-o-transform: rotate(10deg);
-ms-transform: rotate(10deg);
-moz-transform: rotate(10deg);
-webkit-transform: rotate(10deg)
}
.night-tabs-animation-rotate.night-tabs.night-tabs-position-vleft > ul > li,
.night-tabs-animation-rotate.night-tabs.night-tabs-position-vright > ul > li {
-o-transform: rotate(-10deg);
-ms-transform: rotate(-10deg);
-moz-transform: rotate(-10deg);
-webkit-transform: rotate(-10deg)
}
/* ->>> Scale <<<-*/
.night-tabs-animation-scale > ul > li {
-webkit-transform: scale(0.6, 0.6);
-ms-transform: scale(0.6, 0.6);
transform: scale(0.6, 0.6)
}
/* ->>> Flip <<<-*/
.night-tabs-animation-flip .night-tabs-content {
-webkit-perspective: 2000px;
perspective: 2000px;
-webkit-perspective-origin: 50% 50%;
perspective-origin: 50% 50%
}
.night-tabs-animation-flip .night-tabs-content > li {
-webkit-transform: rotateX(-90deg);
transform: rotateX(-90deg)
}
.night-tabs-animation-flip.night-tabs-position-vleft > .night-tabs-content > li {
-webkit-transform: rotateY(90deg);
transform: rotateY(90deg)
}
.night-tabs-animation-flip.night-tabs-position-vright > .night-tabs-content > li {
-webkit-transform: rotateY(-90deg);
transform: rotateY(-90deg)
}
/**
* CONTENTS - layouts.css
*
* HORIZONTAL POSITIONS
* Basic horizontal positions: top, left, right, and justify.
*
* VERTICAL POSITIONS
* Basic vertical positions, vertical left and vertical right.
*
*/
/*------------------------------------*/
#HORIZONTAL POSITIONS
/*------------------------------------*/
/* ->>> Left, Center, Right <<<-*/
.night-tabs-position-left label,
.night-tabs-position-center label,
.night-tabs-position-right label {width: auto}
.night-tabs-position-left {text-align: left}
.night-tabs-position-center {text-align: center}
.night-tabs-position-right {text-align: right}
/* ->>> Justified <<<-*/
.night-tabs-position-justify > input:first-child + label {padding-left: 0}
.night-tabs-position-justify2 > label {width: 50%}
.night-tabs-position-justify3 > label {width: 33.33%}
.night-tabs-position-justify4 > label {width: 25%}
/*------------------------------------*/
#VERTICAL POSITIONS
/*------------------------------------*/
/* ->>> General Styles <<<-*/
.night-tabs-position-vleft .night-tabs-content > li,
.night-tabs-position-vright .night-tabs-content > li {border-top: 0}
.night-tabs-position-vleft > label,
.night-tabs-position-vright > label {
clear: left;
display: block;
float: left;
margin-right: 0;
width: 25%
}
/* ->>> Vertical Left <<<-*/
.night-tabs-position-vleft label {border-right: 2px solid #333}
.night-tabs-position-vleft > .night-tabs-content {margin-left: 25%}
/* ->>> Vertical Right <<<-*/
.night-tabs-position-vright > label {
clear: right;
float: right
}
.night-tabs-position-vright ul li { border-right: 1px solid #333}
.night-tabs-position-vright > .night-tabs-content {margin-right: 25%}
.night-tabs-position-vright .night-tabs-content > li {
-webkit-transform-origin: 100% 0%;
-ms-transform-origin: 100% 0%;
transform-origin: 100% 0%
}
/**
* CONTENTS - typography.css
*
* BASIC TYPOGRAPHY
* Styles for headings,paragraphs, and links.
*
* EXTENDED TYPOGRAPHY
* Styling for images, unordered and ordered lists, and utility classes.
*
* GRID SYSTEM
* Basic 12 fluid column grid system with offset support.
*
*/
/*------------------------------------*/
#BASIC TYPOGRAPHY
/*------------------------------------*/
/* ->>> Headings <<<-*/
h1, h2, h3 { margin: 0; padding: 0 }
.night-tabs .night-tabs-content li .h1,
.night-tabs .night-tabs-content li .h2,
.night-tabs .night-tabs-content li .h3 {
font-weight: 300;
line-height: 1.5
}
.night-tabs .night-tabs-content li .h1 {font-size: 3em}
.night-tabs .night-tabs-content li .h2 {font-size: 2.2em}
.night-tabs .night-tabs-content li .h3 {font-size: 1.4em}
/* ->>> Paragraphs <<<-*/
.night-tabs .night-tabs-content li p {
margin: .5em 0;
font-size: 1em
}
/* ->>> Links <<<-*/
.night-tabs .night-tabs-content li a {color: #ecf0f1}
.night-tabs .night-tabs-content li a:hover,
.night-tabs .night-tabs-content li a:focus {text-decoration: none}
/* ->>> FontAwesome <<<-*/
.night-tabs .fa { margin-right: .5em }
/*------------------------------------*/
#EXTENDED TYPOGRAPHY
/*------------------------------------*/
/* ->>> Images <<<-*/
.night-tabs .night-tabs-content li img {
max-width: 100%;
height: auto
}
/* ->>> Lists <<<-*/
.night-tabs .night-tabs-ordered-list,
.night-tabs .night-tabs-unordered-list {
margin-top: .3em;
padding-left: 2.5em
}
.night-tabs .night-tabs-ordered-list {list-style: decimal}
.night-tabs .night-tabs-unordered-list { list-style: disc}
/* ->>> Utility <<<-*/
/* Positioning */
.text-center {text-align: center}
.text-left {text-align: left}
.text-right {text-align: right}
.pull-left {float: left}
.pull-right {float: right}
/* Preformatted */
.dropcap {
font-family: "Sanchez", Rockwell, slab-serif;
float: left;
font-size: 5em;
line-height: .9;
}
.blockquote {
margin: 1em;
padding: 0 0 0 1em;
border-left: 3px solid #ecf0f1
}
.well {
background: #555;
padding: 1em!important
}
/*------------------------------------*/
#GRID SYSTEM
/*------------------------------------*/
/* ->>> Micro-Clearfix <<<-*/
.night-tabs .grid-row:after {
content: '';
display: table;
clear: both
}
/* ->>> Basic Structure <<<-*/
.night-tabs .grid-row {margin-top: 1em}
.night-tabs .grid-row:first-child {margin-top: 0}
.night-tabs .grid-column {
display: block;
float: left;
width: 100%;
margin-left: 2%
}
.night-tabs .grid-column:first-child { margin-left: 0}
/* ->>> Grid System Config <<<-*/
.night-tabs .grid-column-1 {width: 6.5%}
.night-tabs .grid-column-2 {width: 15%}
.night-tabs .grid-column-3 {width: 23.5%}
.night-tabs .grid-column-4 {width: 32%}
.night-tabs .grid-column-5 {width: 40.5%}
.night-tabs .grid-column-6 {width: 49%}
.night-tabs .grid-column-7 {width: 57.5%}
.night-tabs .grid-column-8 {width: 66%}
.night-tabs .grid-column-9 {width: 74.5%}
.night-tabs .grid-column-10 {width: 83%}
.night-tabs .grid-column-11 {width: 91.5%}
.night-tabs .grid-column-offset-1,
.night-tabs .grid-column-offset-1:first-child{margin-left:8.5%}
.night-tabs .grid-column-offset-2,
.night-tabs .grid-column-offset-2:first-child{margin-left:17%}
.night-tabs .grid-column-offset-3,
.night-tabs .grid-column-offset-3:first-child{margin-left:25.5%}
.night-tabs .grid-column-offset-4,
.night-tabs .grid-column-offset-4:first-child{margin-left:34%}
.night-tabs .grid-column-offset-5,
.night-tabs .grid-column-offset-5:first-child{margin-left:42.5%}
.night-tabs .grid-column-offset-6,
.night-tabs .grid-column-offset-6:first-child{margin-left:51%}
.night-tabs .grid-column-offset-7,
.night-tabs .grid-column-offset-7:first-child{margin-left:59.5%}
.night-tabs .grid-column-offset-8,
.night-tabs .grid-column-offset-8:first-child{margin-left:68%}
.night-tabs .grid-column-offset-9,
.night-tabs .grid-column-offset-9:first-child{margin-left:76.5%}
.night-tabs .grid-column-offset-10,.night-tabs .grid-column-offset-10:first-child{margin-left:85%}
.night-tabs .grid-column-offset-11,.night-tabs .grid-column-offset-11:first-child{margin-left:93.5%}
/**
* CONTENTS - colors.css
*
* COLORS
* Default (Gray/Grey), Red, Blue, Green, Purple, Orange, Yellow, Pink, Brown, Teal, Turquoise.
*
*/
/*------------------------------------*/
#COLORS
/*------------------------------------*/
/* ->>> Default (Gray/Grey) <<<-*/
.night-tabs label:hover span span,
.night-tabs input:checked+label span span,
.night-tabs-color-default label:hover span span,
.night-tabs-color-default input:checked+label span span{background: #6c7a89}
/* ->>> Blue <<<-*/
.night-tabs-color-blue label:hover span span,
.night-tabs-color-blue input:checked+label span span {background: #1e8bc3}
/* ->>> Red <<<-*/
.night-tabs-color-red label:hover span span,
.night-tabs-color-red input:checked+label span span {background: #ef4836}
/* ->>> Green <<<-*/
.night-tabs-color-green label:hover span span,
.night-tabs-color-green input:checked+label span span {background: #27ae60}
/* ->>> Purple <<<-*/
.night-tabs-color-purple label:hover span span,
.night-tabs-color-purple input:checked+label span span {background: #9b59b6}
/* ->>> Orange <<<-*/
.night-tabs-color-orange label:hover span span,
.night-tabs-color-orange input:checked+label span span {background: #F9690E}
/* ->>> Yellow <<<-*/
.night-tabs-color-yellow label:hover span span,
.night-tabs-color-yellow input:checked+label span span {background: #a8880a}
/* ->>> Pink <<<-*/
.night-tabs-color-pink label:hover span span,
.night-tabs-color-pink input:checked+label span span {background: #dB0a5b}
/* ->>> Brown <<<-*/
.night-tabs-color-brown label:hover span span,
.night-tabs-color-brown input:checked+label span span {background: #926239}
/* ->>> Teal <<<-*/
.night-tabs-color-teal label:hover span span,
.night-tabs-color-teal input:checked+label span span {background: #008080}
/* ->>> Turquoise <<<-*/
.night-tabs-color-turquoise label:hover span span,
.night-tabs-color-turquoise input:checked+label span span {background: #16a085}
/**
* CONTENTS - mobile.css
*
* RESPONSIVE STACKING
* Tabs stack on top of each other on mobile devices.
*
*/
/*------------------------------------*/
#RESPONSIVE STACKING
/*------------------------------------*/
@media screen and (max-width: 48em) {
.night-tabs .grid-column,
.night-tabs .grid-column:first-child {
float: none;
width: 100%;
margin: 1em 0 0 0
}
.night-tabs > label {
display: block;
float: none;
width: 100%;
padding-right: 0;
padding-left: 0;
text-align: left;
margin: 0
}
.night-tabs > .night-tabs-content {
margin-top: 0;
margin-right: 0;
margin-left: 0
}
.night-tabs > .night-tabs-content > li {
-webkit-transform-origin: 50% 0%;
-ms-transform-origin: 50% 0%;
transform-origin: 50% 0%
}
.night-tabs.night-tabs-animation-flip > ul > li {
-webkit-transform: rotateX(-90deg);
transform: rotateX(-90deg)
}
}
body {
background: #111;
margin-top: 2em
}

这里主要使用表单的单选按钮来实现这个TAB显示和隐藏,首页tab里的内容默认隐藏,如果单选按钮为选中状态(checked)就显示内容。具体请看下面代码。

关于兼容性,因为是用CSS3来制作的,所以如果不支持CSS3的浏览将会出现不兼容的情况。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索css3
代码
css3 tab 选项卡、aui tab选项卡的实例、css3选项卡切换效果、css3选项卡、css3选项卡 触屏,以便于您获取更多的相关知识。

时间: 2024-10-23 23:34:24

纯CSS3实现的Tab选项卡三个实例分享的相关文章

js+css实现的圆角边框TAB选项卡滑动门代码分享(2款)_javascript技巧

本文实例讲述了js+css实现的圆角边框TAB选项卡滑动门效果.实例包含两款CSS圆角代码,可鼠标点击,也可鼠标移动上去显示效果,分享给大家供大家参考.具体如下: 运行效果图:-------------------查看效果------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 为大家分享的js+css实现的圆角边框TAB选项卡滑动门代码如下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio

Android App中制作仿MIUI的Tab切换效果的实例分享_Android

1.概述哈,今天给大家带来一个ViewPagerIndicator的制作,相信大家在做tabIndicator的时候,大多数人都用过TabPageIndicator,并且很多知名APP都使用过这个开源的指示器.大家有没有想过如何自己去实现这样的一个指示器,并且代码会有多复杂呢~~~今天,我就带领大家来从无到有的实现这样一个指示器,当然了,不准备一模一样,搞得没有创新似的,再看标题,跟MIUI相关,所以我们准备做一个特性与TabPageIndicator一致的,但是样子和MIUI的Tab一样的~~

纯CSS实现漂亮tab选项卡切换特效

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>pure css3 tab</title> <style type="text/css"> *{margin:0; padding:0;} body{font-size: 14px; line-height: 2;} li{

利用CSS3制作漂亮TAB选项卡方法介绍

这个CSS3 Tab样式已经写出来很久了,一直没有时间把它分享出来,也许网上还有其他很多这样子的代码,但没有一种是用到我说的:checked来做的,不管如何,多掌握一种方式对你也是有帮助的. 效果就如博客之前写过的一个Tab一样:有最新文章.热门文章和随机文章. 第一种::checked 首先像平常写HTML和CSS一样,不过要使用input的radio来做为点击后选择的内容.通过input:checked来隐藏和显示需要对应的内容. HTML代码如下:  代码如下 复制代码 <div clas

纯php打造的tab选项卡效果代码(不用js)_php实例

1.根据get判断,获取get生成css 复制代码 代码如下: <style type="text/css"> <?php if(!isset($_GET['city_id'])) { $city_id = 12; } else { $city_id = $_GET['city_id']; } echo '.a'.$city_id.' { color:red; } '; for($i=12;$i<=16;$i++) { if($i != $city_id) {

Android App中制作仿MIUI的Tab切换效果的实例分享

1.概述 哈,今天给大家带来一个ViewPagerIndicator的制作,相信大家在做tabIndicator的时候,大多数人都用过TabPageIndicator,并且很多知名APP都使用过这个开源的指示器.大家有没有想过如何自己去实现这样的一个指示器,并且代码会有多复杂呢~~~今天,我就带领大家来从无到有的实现这样一个指示器,当然了,不准备一模一样,搞得没有创新似的,再看标题,跟MIUI相关,所以我们准备做一个特性与TabPageIndicator一致的,但是样子和MIUI的Tab一样的~

巧用radio实现纯css选项卡完美切换实例

实例一 效果图 <!DOCTYPE html> <html> <head>     <meta charset="UTF-8">     <title>radio选项卡切换</title>     <style type="text/css">         *{margin:0;padding:0;}         .test-box{width: 50%;margin: 10

JS+CSS实现的经典tab选项卡效果代码_javascript技巧

本文实例讲述了JS+CSS实现的经典tab选项卡效果代码.分享给大家供大家参考.具体如下: 这是一款经典的JavaScript+CSS tab选项卡代码,由以前的一款改写而成,自认为不错的东西,发上来分享吧. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-css-jd-tab-cha-style-codes/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio

JS实现黑色风格的网页TAB选项卡效果代码_javascript技巧

本文实例讲述了JS实现黑色风格的网页TAB选项卡效果代码.分享给大家供大家参考.具体如下: 这是一款网页TAB选项卡JS代码,黑色超酷的风格,看了后你会喜欢的,很熟悉很经典的风格,似曾相识的感觉,希望大家喜欢. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-black-style-web-tab-demo/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition