【问题标题】:responsive grid (grid-template-columns)响应式网格(网格模板列)
【发布时间】:2021-01-24 21:11:37
【问题描述】:

你好,我已经习惯了 CSS 中的网格并且我已经使用了

display: grid;
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));

很多次,但是如果我希望里面的 div 以特定宽度开始呢?我有这样的东西

<div class="wrapper">
    <div class="right-content">

    </div>
    <div class="left-content">

    </div>
</div>

.wrapper{
        width: 100vw;
        height: 100vh
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    }

我怎么说.right-content 的起始大小应该是 .wrapper 的 70%,因为如果我做宽度 70%,他会得到模板列属性给他的 1fr 的 70%。 ...有没有办法做到这一点?

【问题讨论】:

    标签: css flexbox responsive-design grid media-queries


    【解决方案1】:

    如果我们只关注 leftright 内容,那么repeat(auto-fit, minmax(...)) 可能过于复杂了。

    当 repeat() 函数设置为自动适应或自动填充时,网格容器会在不溢出容器的情况下创建尽可能多的网格轨道(列/行)。

    由于我们只需要 2 列,因此您可能正在寻找 grid-template-columns: 1fr minmax(70%, 1fr)

    .wrapper {
      width: 100vw;
      height: 100vh;
      display: grid;
      grid-template-columns: 1fr minmax(70%, 1fr);
    }
    
    .right-content {
      background-color: red;
    }
    
    .left-content {
      background-color: blue;
    }
    <div class="wrapper">
      <div class="left-content"></div>
      <div class="right-content"></div>
    </div>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-13
      • 2022-09-28
      • 2014-11-20
      • 2014-01-22
      • 1970-01-01
      • 2016-05-18
      • 2015-05-15
      • 1970-01-01
      相关资源
      最近更新 更多