时间:2021-05-26
许久没有更新了,今天才意外发现以前还是没有看懂盒模型,今天才算看懂了,首先我们今天来看一下想要实现的效果是什么?当然适配是必须的,1920 或者 1376都测试过。效果如图所选中区域所示:
一、关于flex布局我建议去看一下http:///blog/2015/07/flex-grammar.html这篇博客,我们主要用到flex布局的一个换行属性,它是flex-wrap: wrap,自动换行。
二、vue代码
(1)html部分:
<div class="home-card"> <div class="home-item" v-for="n in 7" :key="n"> <img class="home-img" :src="require('_img/icon.png')" alt=""> <div class="home-right"> <span style="color: #999; fontSize: 12px">当周流入总计</span> <span class='home-num' >124,345</span> <span><i class="el-icon-caret-bottom" style="color: red; fontSize: 12px" ></i> <i style="color: red"> -10%</i> <span style="color: #999; fontSize: 12px">同比上月</span></span> </div> </div> </div>(2)css部分
.home-card { width 100% overflow hidden padding 10px 0px display flex flex-wrap: wrap .home-item { border-style solid border-width: 1px border-color: #E4E4E4 width calc(25% - 30px) padding 20px 0px 20px 20px margin-right 10px margin-bottom 10px display flex align-items center background #fff &:nth-child(4) { margin-right 0 } .home-img { display inline-block width 60px height 60px margin 0 padding 0 } .home-right { display flex flex-direction column justify-content center align-items flex-start margin-left 10px .home-num { font-size 40px margin 5px 0 } } } }要想每一个div刚好能自动填充适配,最关键的就是css样式里面的宽度计算:也就是width: calc(25% - 30px),因为最大宽度是100%,每一个平分下来是25%,剩下的这么算呢?看图
每一个home-item共占用32px,去掉10px,每个平分2.5px,也就是home-item占用32-2.5=29.5px,算30px,这样就实现宽度自动填充实现适配了。哈哈
到此这篇关于vue flex 布局实现div均分自动换行的文章就介绍到这了,更多相关vue div均分自动换行内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文主要介绍了flex布局实现无缝滚动的示例代码,分享给大家,具体如下:案例的演示flex布局所谓flex布局就是弹性盒布局,这种布局在移动端比较常用,但随着浏
本文主要介绍了css3flex布局实现平均分配元素,给自己留个笔记,也分享给大家,具体如下:例子一:flex布局*{padding:0;margin:0;}bo
一、本文实现的效果图如下:布局右侧使用flex布局,超过3个则换行。父元素代码如下:.nav-right{width:75%;padding:10px;disp
在用了Flex布局会发现,当水平排列后,会发现所有子项的高度都变成一样的了。这是因为Flex布局会默认:把所有子项变成水平排列。默认不自动换行。让子项与其内容等
本文介绍了css是如何实现在页面文字不换行、自动换行、强制换行的方法,分享给大家,具体如下:强制不换行div{white-space:nowrap;}自动换行d