美文网首页
纯css实现上左固定,中间切换效果

纯css实现上左固定,中间切换效果

作者: 坏丶毛病 | 来源:发表于2020-09-28 20:07 被阅读0次

    接触过vue的童鞋都知道路由跳转,配置子路由实现tab选项卡效果。

    而常见的头部固定,左侧边栏固定,只是右侧内容变化的这种布局方式又是我们所必须的。

    那么脱离框架,怎么基于简单的css实现这种布局效果呢?

    一起来看看吧。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            html,body{
                width: 100%;
                height: 100%;
            }
            .top{
                width: 100%;
                height: 100px;
                background: #323437;
                border-bottom: 1px solid gray;
                text-align: center;
                line-height: 100px;
                color: #fff;
                font-size: 20px;
            }
            .content{
                width: 100%;
                height: calc(100% - 101px);
                display: flex;
            }
            .nav{
                width: 200px;
                height: 100%;
                background: #323437;
            }
            iframe{
                flex: 1;
                height: 100%;
                background: #212224;
                margin: 0;
                border: 0;
            }
            ul li a{
                display: block;
                color: #fff;
                text-decoration: none;
                font-size: 20px;
                text-align: center;
                padding: 20px 0;
            }
        </style>
    </head>
    <body>
        <!-- 头部 -->
        <div class="top">头部区域</div>
        <!-- 内容 -->
        <div class="content">
            <!-- 左侧边栏 -->
            <ul class="nav">
                <li>
                    <a href="page1.html" target="showBox">页面一</a>
                    <a href="page2.html" target="showBox">页面二</a>
                    <a href="page3.html" target="showBox">页面三</a>
                    <a href="page4.html" target="showBox">页面四</a>
                    <a href="page5.html" target="showBox">页面五</a>
                </li>
            </ul>
            <!-- 右侧显示部分 -->
            <iframe src="page1.html" name="showBox"></iframe>
        </div>
    </body>
    </html>
    

    页面分为上下两个板块,头部高度固定,宽度占全屏,内容区域通过计算属性 calc计算得出全屏减去头部的高度所剩的大小,然后就是下面内容部分的大小,内容部分采用弹性盒,分为左侧边栏和右边显示部分,左侧边栏固定宽度,右侧占剩余全部大小。

    右侧显示部分采用iframe框,通过a标签的href指向iframe的name值,这样a标签跳转的页面就能显示在iframe框里。

    而iframe的src是其实状态要显示的页面。

    这样我们就实现了这样的布局效果。

    效果图:

    image

    而各个子页面只是放置了简单的图片,即在内容区域需要显示的部分。

    页面一:

    image

    好了,以上就简单实现了我们的布局需求。

    如有问题,请指出,接受批评。

    相关文章

      网友评论

          本文标题:纯css实现上左固定,中间切换效果

          本文链接:https://www.haomeiwen.com/subject/mojjuktx.html