程序员

Flex移动布局中单行和双行布局的区别及使用详解

作者:admin 2021-05-06 我要评论

这里是单行布局 使用ulli 来布局 ulclass=local-navliahref=#spanclass=local-nav-icon-icon1/span攻略景点/a/liliahref=#spanclass=local-nav-icon-icon2/span...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

这里是单行布局 使用ul>li 来布局

<ul class="local-nav">
        <li>
            <a href="#">
                <span class="local-nav-icon-icon1"></span> 攻略景点
            </a>
        </li>
        <li>
            <a href="#">
                <span class="local-nav-icon-icon2"></span> 门票玩乐
            </a>
        </li>
        <li>
            <a href="#">
                <span class="local-nav-icon-icon3"></span> 美食林
            </a>
        </li>
        <li>
            <a href="#">
                <span class="local-nav-icon-icon4"></span> 周边游
            </a>
        </li>
        <li>
            <a href="#">
                <span class="local-nav-icon-icon5"></span> 一日游
            </a>
        </li>
    </ul>

CSS样式如下,由于比较懒文字直接加在后面,没有放入标签中。先定义了整体的

.local-nav li [class^="local-nav-icon"]

在li 中类名中以local-nav-icon开头的类写了样式,后在不同的li中换上不同的精灵图。

.local-nav {
    display: flex;
    height: 64px;
    background-color: #fff;
    border-radius: 8px;
    margin: 3px 4px;
}

.local-nav li {
    flex: 1;
}

.local-nav a {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 12px;
}

.local-nav li [class^="local-nav-icon"] {
    width: 32px;
    height: 32px;
    margin-top: 8px;
    background: url(../images/localnav_bg.png) no-repeat 0 0;
    background-size: 32px auto;
}

.local-nav li .local-nav-icon-icon2 {
    background-position: 0 -32px;
}

.local-nav li .local-nav-icon-icon3 {
    background-position: 0 -64px;
}

.local-nav li .local-nav-icon-icon4 {
    background-position: 0 -96px;
}

.local-nav li .local-nav-icon-icon5 {
    background-position: 0 -128px;
}

在双行中布局中,下面给出一个li的写法,其他li相同。

<ul class="subnav-entry">
        <li>
            <a href="#" title="自由行">
                <span class="subnav-entry-icon1"></span>
                <span>自由行</span>
            </a>
        </li>

CSS样式如下

.subnav-entry {
    display: flex;
    border-radius: 8px;
    margin: 0px 4px;
    background-color: #fff;
    flex-wrap: wrap;
}
.subnav-entry li {
    /* flex: 1; */
    flex: 20%;
}

这里是flex为20%,既可以让每5个排在一行,设置了换行。每行放不下就会自动换行

.subnav-entry a {
    display: flex;
     flex-direction: column;
    align-items: center;
}

这里采用是以y为主轴,x轴为側轴对齐的方式。

.subnav-entry [class^="subnav-entry-icon"] {
    width: 28px;
    height: 28px;
    margin-top: 4px;
    background: url(../images/subnav-bg.png) no-repeat;
    background-size: 28px auto;
}

.subnav-entry-icon2 {
    background: url(../images/subnav-bg.png) no-repeat;
    background-size: 28px auto;
}

上面的方法是比较容易理解和记忆的方式来做

总结

到此这篇关于Flex移动布局中单行和双行布局的区别及使用详解的文章就介绍到这了,更多相关Flex移动布局内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!


原文链接:https://m.jb51.net/css/732712.html

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 20182217刘洪宇EXP3_免杀原理 - 菠菜雨

    20182217刘洪宇EXP3_免杀原理 - 菠菜雨

  • 优雅的交换两个数的值 - xihale

    优雅的交换两个数的值 - xihale

  • OLAP引擎:基于Druid组件进行数据统计

    OLAP引擎:基于Druid组件进行数据统计

  • AOV网与拓扑排序 - gonghr

    AOV网与拓扑排序 - gonghr

腾讯云代理商
精彩导读
海外云服务器
热门资讯
腾讯云代理商