> 웹 프론트엔드 > HTML 튜토리얼 > 纯CSS实现页签切换效果_html/css_WEB-ITnose

纯CSS实现页签切换效果_html/css_WEB-ITnose

WBOY
풀어 주다: 2016-06-21 09:09:11
원래의
1834명이 탐색했습니다.

主要运用了 CSS3 的 :checked 选择器,
代码结构跟使用js差不多,只是多了几个radio,
不知道性能上是js快还是css快呢?

codepen地址:http://codepen.io/YuanWing/pen/RPqvad

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width,initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">    <title>CSS3 TAB</title>    <style>        body {            font-family: 'Microsoft YaHei';             font-size: 14px;            background-color: #f5f4f7;            margin: 0;            color: #252525;        }        a {            text-decoration: none;        }        h3, h4 {            margin: 0;            font-weight: 400;            font-size: inherit;        }        ul {            padding-left: 0;            list-style: none;            margin: 0;        }        p {            margin-top: 0;            margin-bottom: 0;        }        .Jhds {            position: relative;        }        .Jhds .radio {            opacity: 0;            position: absolute;           }        .Jhds .radio:nth-of-type(1):checked ~ .tab-title label:nth-of-type(1) {            color: #fff;            background-color: #498fee;        }        .Jhds .radio:nth-of-type(2):checked ~ .tab-title label:nth-of-type(2) {            color: #fff;            background-color: #498fee;        }        .Jhds .radio:nth-of-type(3):checked ~ .tab-title label:nth-of-type(3) {            color: #fff;            background-color: #498fee;        }        .Jhds .radio:nth-of-type(1):checked ~ .tab-outer .tab-inner:nth-of-type(1) {            display: block;        }        .Jhds .radio:nth-of-type(2):checked ~ .tab-outer .tab-inner:nth-of-type(2) {            display: block;        }        .Jhds .radio:nth-of-type(3):checked ~ .tab-outer .tab-inner:nth-of-type(3) {            display: block;        }        .Jhds .tab-title {            font-size: 0;            padding: 15px;            text-align: center;        }        .Jhds .tab-title label{            display: inline-block;            color: #498fee;            text-align: center;            background-color: #fff;            border: 1px solid #498fee;            font-size: 14px;            width: 30%;            padding: 5px 0;        }        .Jhds .tab-title label:first-child {            border-right: 0 none;            border-top-left-radius: 5px;            border-bottom-left-radius: 5px;        }        .Jhds .tab-title label:last-child {            border-left: 0 none;            border-top-right-radius: 5px;            border-bottom-right-radius: 5px;        }        .Jhds .tab-outer .tab-inner {            display: none;        }        .Jhds .tab-inner li{            position: relative;            background-color: #fff;        }        .Jhds .title:after,        .Jhds .tab-inner li:before,        .Jhds .tab-inner li:last-child:after{            position: absolute;            left: 0;            content: '';            width: 100%;            height: 1px;            font-size: 0;            background-color: #d9d9d9;            -webkit-transform: scaleY(0.5);            transform: scaleY(0.5);        }        .Jhds .tab-inner li:before {            top: 0;        }        .Jhds .title:after,        .Jhds .tab-inner li:last-child:after {            bottom: 0;        }        .Jhds .title {            padding: 10px;            position: relative;            overflow: hidden;        }        .Jhds .title .Jhds-num {            color: #498fee;            white-space: nowrap;        }        .Jhds .title .time {            float: right;            display: inline-block;        }        .Jhds .list {            padding: 10px 60px 10px 10px;            position: relative;            color: #252525;            display: block;        }        .Jhds .price {            color: #f90;            margin-top: 5px;        }        .Jhds .num {            position: absolute;            right: 30px;            top: 50%;            height: 20px;            line-height: 20px;            margin-top: -10px;        }        .arrow {            position: absolute;            right: 10px;            top: 50%;            margin-top: -6px;            width: 10px;            height: 10px;            border-left: 1px solid #cfcfcf;            border-top: 1px solid #cfcfcf;            -webkit-transform: rotate(135deg);            transform: rotate(135deg);        }        @media screen and (max-width:370px) {            .Jhds .title .time {                float: none;            }        }    </style></head><body>    <div class="Jhds">        <input checked class="radio" type="radio" name="Jhds" id="Jhds1">        <input class="radio" type="radio" name="Jhds" id="Jhds2">        <input class="radio" type="radio" name="Jhds" id="Jhds3">        <div class="tab-title">            <label for="Jhds1">待付款</label>            <label for="Jhds2">待签收</label>            <label for="Jhds3">已完成</label>        </div>        <div class="tab-outer">            <ul class="tab-inner">                <li>                    <h3 class="title">                        <span class="Jhds-num">进货单号:jkdjh2015072623125699</span>                        <span class="time">今天 23:12 进货</span>                    </h3>                    <a class="list" href="###">                        <h4>60&deg;飞天茅台最好的茅台浓香1000ml</h4>                        <p class="price">待确认:&yen;129.00</p>                        <span class="num">X6</span>                        <span class="arrow"></span>                    </a>                </li>            </ul>            <ul class="tab-inner">                <li>                    <h3 class="title">                        <span class="Jhds-num">进货单号:jkdjh2015072623965199</span>                        <span class="time">今天 23:12 进货</span>                    </h3>                    <a class="list" href="###">                        <h4>50&deg;西凤&middot;御宴酒(精装版)500ml</h4>                        <p class="price">已发货:&yen;39.00</p>                        <span class="num">X1</span>                        <span class="arrow"></span>                    </a>                </li>            </ul>            <ul class="tab-inner">                <li>                    <h3 class="title">                        <span class="Jhds-num">进货单号:jkdjh2015072623126899</span>                        <span class="time">今天 23:12 进货</span>                    </h3>                    <a class="list" href="###">                        <h4>法国富乐男爵干红葡萄酒豪华大礼包</h4>                        <p class="price">已签收:&yen;369.00</p>                        <span class="num">X6</span>                        <span class="arrow"></span>                    </a>                </li>            </ul>        </div>    </div></body></html>
로그인 후 복사
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿