当前位置:   article > 正文

flex布局之 flex-wrap:wrap 自动换行属性,导致最后一行无法垂直对齐,搬砖解。记录!!_flex-wrap: wrap;

flex-wrap: wrap;

首先功能是布局自动换行自动对齐。想要达到的效果是

或者是这样的:

                              

                                                                 或者说是这样的:

 但是实际上得到的却是:

 

                            

解决方法:

  1. <div class="menu">
  2. <div
  3. class="menu-item"
  4. v-for="(item, index) in item.menuList"
  5. :key="index"
  6. >
  7. <div class="icon"></div>
  8. <div class="m-i-name">
  9. {{ item.name }}
  10. </div>
  11. </div>
  12. </div>
  1. .menu {
  2. display: flex;
  3. flex-wrap: wrap;
  4. justify-content: space-between;
  5. .menu-item {
  6. display: inline-block;
  7. flex: 1;
  8. }
  9. /*
  10. ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓解决方法↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
  11. */
  12. /* 因为咱们是每行展示3个所以取3n, 下面的3n-1 ,3n-2 对应的为最后一行的div数量。
  13. 如果每行展示的是4个就4n-1,4n-2.... calc(100/每行的数量)
  14. */
  15. /* 如果最后一行是2个元素 */
  16. .menu-item:last-child:nth-child(3n - 1) {
  17. margin-right: calc(33% + 3% / 3);
  18. }
  19. /* 如果最后一行是1个元素 */
  20. .menu-item:last-child:nth-child(3n - 2) {
  21. margin-right: calc(66% + 6% / 3);
  22. }
  23. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/234729
推荐阅读
相关标签
  

闽ICP备14008679号