标签: css-grid

CSS 网格 - 对齐/对齐属性中 flex-start 和 Start Value 之间的差异

我是 CSS Grid 的新手,在 Google 搜索后,我没有找到我想要的东西,我想知道对齐和调整属性,flex-start/flex-end 和开始/结束值之间有什么区别?

css flexbox css-grid

6
推荐指数
1
解决办法
6111
查看次数

CSS 网格列拉伸以填充整行/或居中行?

我有一个基本的网格设置如下:

.grid-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(33rem, 1fr));
  grid-gap: 1rem;
}
Run Code Online (Sandbox Code Playgroud)

当网格自动分成新行时,我要么希望新行上的元素占据一定比例的空间,要么居中以便它们看起来不错。

例如,如果我在一行中有 3 个元素,那么我希望每个元素占用 33% 的容器空间。但是,当网格中断并且新行上只有 1 个元素时,我希望该元素占据行宽的 100%,或者至少看起来居中——这与将元素全部放置在中间的默认行为相反。向左移动,仅占用 1fr 的空间。

同样,如果新行中有 2 个元素,则每个元素应占据行空间的 50%,或者两个元素一起看起来应居中。

我不知道总共会有多少个元素。理想情况下,该解决方案应适用于最少 1 个到任意数量的元素。

如果有人有任何想法,请告诉我。谢谢。

html css centering flexbox css-grid

6
推荐指数
1
解决办法
1万
查看次数

css grid - 匹配自动宽度的动态列数

我真的不认为这应该那么难。我有未知数量的列要在 CSS 网格中显示。我希望所有列的宽度都相同以匹配内容。我希望它是最小内容,这样当文本太长时就会换行。我尝试了许多不同的变化。但本质上,这就是我认为我想要的,并且不确定为什么浏览器在线上显示“无效的属性值” grid-template-columns

.flyer-container > div {
  width: 100%;
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(auto-fit, minmax(min-content, 1fr));
}
Run Code Online (Sandbox Code Playgroud)

css css-grid

6
推荐指数
0
解决办法
8283
查看次数

css grid 如何在行之间添加线?

我正在使用 css 网格制作一个表格。我无法向行添加边框线。柱与柱之间有间隙。应该像图片中那样

在此输入图像描述

这是我向单元格添加 border-bottom 时得到的结果:

在此输入图像描述

const TableWrapperUI = styled.div`
  display: grid;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #dbeaf4;
  grid-template-columns: repeat(
    ${props => props.columns && props.columns},
    fit-content(400px)
  );
  justify-items: center;
  padding: 5px;
  justify-content: space-between;
  > span {
    justify-self: left;
    border-bottom: 1px solid red;
  }
`;
Run Code Online (Sandbox Code Playgroud)

您可以在这里查看:https ://codesandbox.io/s/goofy-easley-w5rrg

html css html-table reactjs css-grid

6
推荐指数
3
解决办法
2万
查看次数

使用 CSS 网格调整图表大小问题

我目前正在学习 CSS 网格,并且尝试在 CSS 网格项单元格内使用 Chart.JS,但是如果调整浏览器的大小,图表不会像其他项目那样随网格调整大小。

但是,如果您以新的窗口大小刷新浏览器,图表和网格会正确加载。

我有一个 CodePen 并将代码片段插入到 StackOverflow 中,如果有人能给我任何关于我做错了什么的指示,我将不胜感激。

https://codepen.io/warrenbuckley/pen/BXaQwY

var lineCtx = document.getElementById('line').getContext('2d');

var lineChart = new Chart(lineCtx, {
  type: 'line',
  data: {
    labels: ['Mon', 'Tue', 'Wed', 'Thur', 'Fri'],
    datasets: [{
        label: 'Number of Members a Day',
        data: [12, 5, 8, 35, 4],
        backgroundColor: [
          '#ff8a89'
        ],
        borderColor: [
          '#ff8a89'
        ],
        borderWidth: 4,
        fill: false,

        pointBorderWidth: 4,
        pointBackgroundColor: "#ffffff",
        pointBorderColor: "#ff8a89",
        pointRadius: 8,

        pointHoverBorderWidth: 4,
        pointHoverBackgroundColor: "#ffffff",
        pointHoverBorderColor: "#ff8a89",
        pointHoverRadius: 8
      },
      {
        label: 'Failed Logins', …
Run Code Online (Sandbox Code Playgroud)

javascript css css-grid chart.js

6
推荐指数
1
解决办法
2154
查看次数

使用显示时没有底部填充:网格和滚动

我有一个容器div,里面有一些填充物,display: gridoverflow: auto已设置。当子级div的高度大于父级的高度并且出现滚动条时,它会滚动,以便没有底部填充。

这是一个提琴手

.container {
    background: red;
    display: grid;
    height: 300px;
    padding: 3em;
    overflow: auto;
    width: 300px;
}

.child {
    height: 500px;
    background: #000;
}
Run Code Online (Sandbox Code Playgroud)
<div class="container">
    <div class="child"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

但是,如果容器的制作方式不是display: grid,则向下滚动时会出现底部填充。

display: grid这是元素的预期行为吗?如果是这样,为什么?恢复底部填充的正确方法是什么,最好只使用CSS?

css scroll padding css-grid

6
推荐指数
1
解决办法
1724
查看次数

在 grid-template-rows 中使用自动填充或自动调整:repeat(auto-fill, 200px) 仅设置第一行的高度 - 这是为什么?

我想使用设置网格中每一行的行高grid-template-rows: repeat(auto-fill, 200px),但意识到它仅适用于网格的第一行。事实证明grid-auto-rows: 200px更适合我的需求,但我仍然想知道为什么使用auto-fillingrid-template-rows: repeat(auto-fill, 200px)只设置第一行而不是所有行的高度。注意:如果我使用整数而不是auto-fill正确设置指定行数的高度。

图片示例:

css css-grid

6
推荐指数
1
解决办法
6076
查看次数

CSS 在网格布局中嵌套 minmax

我有这段 css 来设置网格的列:

grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我想扩展它,这样我就可以使用最大像素数的百分比值,如下所示:

grid-template-columns: repeat(auto-fill, minmax(minmax(15%, 180px), 1fr));
Run Code Online (Sandbox Code Playgroud)

但这只给了我 100% 宽度的列。这绝对不是我想要的。
我该如何实现这个目标?

css css-grid

6
推荐指数
1
解决办法
1731
查看次数

如何使我的网格模板行适合内容?

我有一个由两个元素组成的网格,一个图像和一些文本。

.card {
  width: 100%;
  display: grid;
  grid-template-columns: 60% 40%;
  grid-template-rows: 50vw;
  grid-template-areas:
  "a b"
}

.card-text {
  grid-area: a;
  background-color: #02B277;
}

.card-text p {
  width: 70%;
  margin: auto;
  top: 10rem;
  font-weight: 500;
}

.image {
  background: url('img/placeholder.jpg');
  background-size: cover;
  grid-area: b;
}
Run Code Online (Sandbox Code Playgroud)
<div class="card">

      <div class="card-text">
       <p>Lorem ipsum blablabla</p>
      </div>

      <div class="image">
      </div>

</div>
Run Code Online (Sandbox Code Playgroud)

当窗口水平缩小时,具有固定 的文本font-size会自动垂直扩展,溢出 div。如何使网格模板行展开以包围文本?我已经尝试将其设置为,auto但它只是遵循图像的比例。

html css css-grid

6
推荐指数
1
解决办法
5266
查看次数

如何使列宽不均匀的 CSS 网格具有响应性?

我创建了一个 CSS 网格,每行有 2 列。第一列占宽度的 25%,第二列占宽度的 75%。我已经实现了这个使用

    .grid-container{
             display:inline-grid;
             grid-template-columns: 1fr 3fr;
    }
Run Code Online (Sandbox Code Playgroud)

现在,我想让它具有响应能力,以便当屏幕尺寸减小到超过某一点时,该列应该彼此重叠,并且每一列应该占据宽度容器的 100%。

我在网上遇到的每个解决方案都使其具有响应性,但它​​也会将我的初始列宽从 25%:75% 更改为 50%:50%,我想避免这种情况。任何建议或提示将不胜感激。谢谢大家!

css grid-layout responsive-design css-grid responsive

6
推荐指数
1
解决办法
3180
查看次数