美文网首页前端小栈
【方案】并排等分,单排对齐靠左布局

【方案】并排等分,单排对齐靠左布局

作者: 木羽zwwill | 来源:发表于2017-09-04 13:13 被阅读31次

    需求

    示意图

    在大量“不定宽”元素并排的布局模式下,上图是我们想要的最佳布局
    但是FlexBox布局虽然枪弹但并不能完全呈现以上布局,于是我们需要结合FlexBox作下小的改动即可实现。

    css现成的布局方式

    Flex布局,具有等分布局的能力,如图


    问题

    但是底部我们并不想如此等分,我们更希望可以同上一排对齐

    方案

    其实很简单,我们只要在后面加入一些等宽但是占高为0等隐藏元素即可轻松实现。
    如图:



    至于【empty】元素的数量需要不小于单行最多元素的数量即可,
    最后我们将empty设置隐藏即可

    .empty {
        visibility: hidden; 
    }
    

    完整demo

    <html>
    <head>
        <meta charset="UTF-8">
        <title>并排等分,单排靠左最齐布局</title>
        <style type="text/css">
            * {
                margin: 0;
                padding: 0;
            }
            .main {
                display: flex;
                width: 1000px;
                flex-flow: row wrap;
                justify-content: space-between;
                margin: 50px auto;
                background-color: #ccc;
                align-content: baseline;
            }
            .main span {
                width: 132px;
                height: 200px;
                display: inline-block;
                background-color: #666;
                margin: 4px;
            }
            .main .emp{
                height: 0;
                border: none;
                margin-top: 0;
                margin-bottom: 0;
                visibility: hidden;
            }
        </style>
    </head>
    <body>
        <div class="main">
            <span style="">1</span>
            <span style="">2</span>
            <span style="">3</span>
            <span style="">4</span>
            <span style="">5</span>
            <span style="">6</span>
            <span style="">7</span>
            <span style="">8</span>
            <span style="">9</span>
            <span style="">10</span>
            <span style="">11</span>
            <span style="">12</span>  
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
            <span class="emp" >empty</span>
        </div>
    </body></html>
    

    相关文章

      网友评论

        本文标题:【方案】并排等分,单排对齐靠左布局

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