css实现自适应的三栏布局

简介: css实现自适应的三栏布局

CSS实现自适应三栏布局

效果如下图

+24.png
实现思路


问题:如果将最外层的父div设置为100%,那么三个子div为33.3333%即可实现横向的三栏布局,但是三个子div之间没有间距,不是很美观。但是我们加上间距会发现100%不能够分配给三个子div(三个div不能排列在一行)


🛑方法:在父div与子div之间在加上一层div,我们按照层次由外而内分别叫做div1,div2,div3。div1仍然为100%,div2则设置margin-right: -10px,div3则设置margin-right: 10px。由此,我们将div3的宽度设置为33.333333% - 10px即可以达到理想效果。


关键代码如下

.div1{
    width: 100%;
    overflow: hidden;
}
.div2{
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px
}
.div3{
    width: calc(33.33333% - 10px);
    margin-right: 10px;
}

全部代码

<template>
  <div class="div1">
    <div class="div2">
      <div class="div3"></div>
      <div class="div3"></div>
      <div class="div3"></div>
      <div class="div3"></div>
      <div class="div3"></div>
      <div class="div3"></div>
      <div class="div3"></div>
      <div class="div3"></div>
    </div>
  </div>
</template>
<style lang="scss" scoped>
  .div1{
    width: 100%;
    height: 500px;
    background-color: red;
        overflow: hidden;
    .div2{
      display: flex;
      flex-wrap: wrap;
      margin-right: -10px;
      background-color: mediumpurple;
      .div3{
        width: calc(33.33333% - 10px);
        height: 100px;
        margin-right: 10px;
        margin-top: 10px;
        background-color: greenyellow;
      }
    }
  }
</style>

效果如下图

+25.png

相关文章
|
1月前
|
前端开发 JavaScript 容器
CSS 实战录: 双栏、四等分、不等间距、自适应...
CSS 实战录: 双栏、四等分、不等间距、自适应...
80 0
|
22天前
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
22天前
|
前端开发
css页面顶部底部固定,中间自适应几种方法
【10月更文挑战第22天】css页面顶部底部固定,中间自适应几种方法
|
15天前
|
前端开发 容器
实现CSS品字布局
【10月更文挑战第27天】
|
1月前
|
前端开发 容器
使用 CSS Grid 布局实现响应式设计
【10月更文挑战第1天】使用 CSS Grid 布局实现响应式设计
49 4
|
1月前
|
前端开发 容器
前端技术分享:利用CSS Grid布局实现响应式设计
【10月更文挑战第1天】前端技术分享:利用CSS Grid布局实现响应式设计
|
3月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
HTML+CSS 实现通用的企业官网页面(记得收藏)
HTML+CSS 实现通用的企业官网页面(记得收藏)