zoukankan      html  css  js  c++  java
  • 纯CSS + 媒体查询实现网页导航特效

     纯css+媒体查询实现网页导航特效

     附上效果图:

     代码如下,复制即可使用:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            body {
                background: #801638;
            }
            body,
            body > * {
                margin: 0;
                padding: 0;
                font-family: 'Roboto', sans-serif;
                font-weight: normal;
            }
            * {
                transition: all .3s ease 0s;
            }
            /* Background colours */
            div + div article:nth-child(1) {
                background: #c22326;
            }
            div + div article:nth-child(2) {
                background: #f37338;
            }
            div + div article:nth-child(3) {
                background: #fdb632;
            }
            div + div article:nth-child(4) {
                background: #027878;
            }
            div + div article:nth-child(5),
            div + div {
                background: #801638;
            }
            /* Main layout */
            html,
            body,
            div + div {
                width: 100vw;
                height: 100vh;
            }
            div + div {
                list-style: none;
                position: relative;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: stretch;
                overflow: hidden;
            }
            /* Articles */
            div + div article {
                flex: initial;
                width: 20%;
                height: 100%;
                text-align: center;
                color: #fff;
                text-decoration: none;
                vertical-align: bottom;
                box-sizing: border-box;
                padding: 2vh 1vw;
                position: relative;
            }
            /* Big Headings */
            body > div:first-child {
                position: fixed;
                bottom: 8vh;
                background: #fff;
                width: 100%;
                text-align: center;
                padding: .5rem;
                z-index: 2;
            }
            body > div:first-child h1,
            body > div:first-child h2 {
                margin: 0;
                padding: 0;
            }
            /* Hover interaction */
            div + div:hover article {
                flex: initial;
                width: 10%;
            }
            div + div article:hover {
                width: 60%;
            }
            article > div {
                opacity: 0;
                transition: opacity .2s ease 0;
            }
            div + div article:hover > div {
                opacity: 1;
                transition: opacity .3s ease .3s;
            }
            /* navigation */
            div + div article > h2 {
                bottom: 2vh;
                position: absolute;
                text-align: center;
                width: 100%;
                margin: 0;
                font-size: 3vh;
            }
            /* Article layouts */
            article div {
                text-align: left;
                width: 58vw;
            }
            article div p,
            article div div h2,
            article div h3 {
                margin: 0 0 1em 0;
            }
        
            article div p {
                width: 40vw;
            }
            @media (max- 900px) {
                div + div article {
                    padding: 2vh 3vw;
                }
                div + div article > h2 {
                    transform: rotate(90deg);
                    bottom: 23vh;
                    min-width: 12em;
                    text-align: left;
                    transform: rotate(-90deg);
                    transform-origin: 0 0 0;
                    opacity: 1;
                }
                div + div article:hover > h2 {
                    opacity: 0;
                }
                article div p {
                    width: 50vw;
                }
                article div {
                    max-height: calc(72%);
                    overflow-y: auto;
                }
            }
        </style>
    </head>
    <body>
        <div>
            <h1>我在这,谁敢动我。</h1>
            <h2>我是你们大哥的头</h2>
        </div>
        <div>
            <article>
                <h2>大哥的小弟一</h2>
                <div>
                    <h3>大哥的小弟一</h3>
                    <p>身高180</p>
                    <p>体重120</p>
                </div>
             </article>
             <article>
               <h2>大哥的小弟二</h2>
                <div>
                   <h3>大哥的小弟二</h3>
                   <p>身高160</p>
                   <p>体重100</p>
                </div>
              </article>
              <article>
                 <h2>大哥的小弟三</h2>
                 <div>
                   <h3>大哥的小弟三</h3>
                   <p>身高175</p>
                   <p>体重180</p>
                 </div>
              </article>
              <article>
                 <h2>大哥的小弟四</h2>
                 <div>
                   <h3>大哥的小弟四</h3>
                     <p>身高180</p>
                     <p>体重110</p>
                 </div>
              </article>
              <article>
                 <h2>大哥的小弟五</h2>
                 <div>
                   <h3>大哥的小弟五</h3>
                   <p>身高180</p>
                   <p>体重150</p>
                 </div>
              </article>
         </div>
      </body>
    </html>

     如有错误,欢迎联系我指正,非常感谢!!!

  • 相关阅读:
    C++ 引用的作用和用法
    const和指针
    sizeof的用法
    C++数组初始化的问题
    C++变量的存储类别(动态存储、静态存储、自动变量、寄存器变量、
    c++变量在内存中的存储区域(转)
    C语言的 &数组名 和 数组名的区别
    C语言运算中的数据类型自动转换原则
    链表反转
    常见的排序方法
  • 原文地址:https://www.cnblogs.com/yidaixiaohui/p/8446900.html
Copyright © 2011-2022 走看看