当前位置: 首页 > 知识库问答 >
问题:

CSS网格:切换两个特定列的顺序

华和悦
2023-03-14

我想在桌面上切换我的网格的第3色和第4色。我知道我可以为每个项目分配网格顺序,或者为两个div使用自己的行,然后设置顺序,但我希望避免这两个,以减少代码。

有没有办法用CSS-Grid来实现这一点?我对通过css-flex的解决方案持开放态度,如果这会更容易的话。

我当前的代码如下所示:

null

.row{
  display: grid;
  grid-template-columns: 1fr;
}

@media screen and (min-width: 1200px) {
  .row{
    grid-template-columns: 1fr 1fr
  }
}

.row div{border:1px solid black}
  <div class="row">
      <div>[IMG]</div>
      <div>Text</div>
      <div>[IMG]</div>
      <div>Text</div>
      <div>[IMG]</div>
      <div>Text</div>
  </div>

null

共有2个答案

慕容恩
2023-03-14

您可以简单地像下面这样做

null

.row{
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-flow:dense;
}

@media screen and (min-width: 1200px) {
  .row div:nth-child(3) {
     grid-column:2;
  }
}

.row div{border:1px solid black}
<div class="row">
      <div>[IMG]</div>
      <div>Text</div>
      <div>[IMG]</div>
      <div>Text</div>
      <div>[IMG]</div>
      <div>Text</div>
  </div>
王豪
2023-03-14

您可以将order属性与flex或网格容器一起使用。如果您不想使用order,可以像下面这样使用grid-columngrid-row

null

.row {
  display: grid;
  grid-template-columns: 1fr;
}

@media screen and (min-width: 1200px) {
  .row {
    grid-template-columns: 1fr 1fr
  }
  .row>div:nth-child(3) {
    grid-column: 2 / 3;
  }
  .row>div:nth-child(4) {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }
}

.row div {
  border: 1px solid black
}
<div class="row">
  <div>[IMG]</div>
  <div>Text</div>
  <div style="background: red">[IMG]</div>
  <div style="background: yellow">Text</div>
  <div>[IMG]</div>
  <div>Text</div>
</div>
 类似资料:
  • 我是JavaFX的新手,我需要在两个没有菜单栏的锚窗格之间切换,但锚窗格本身中有注册按钮,它应该切换到注册表单表单登录表单我正在使用Scene Builder生成.fxml文件, 我的问题是如何以一种简单的方式做到这一点?loginform与注册按钮 ERRRO是 null main.java controller.java 我的问题是如何在main.java中加载register form,在单

  • 我正在使用顺风CSS,并试图建立一个网格,使某些单元格内容跨越多个单元格,而其他项目留在单个单元格。在下面的代码中,我试图展示我正在尝试完成的事情。我知道我的col-span-2班什么也没做,但我把它放在那里是为了表明我希望我能做什么。我想让所有的单元格都是相同的宽度(我只想让一些单元格内容跨越分隔线)。我需要某种覆盖逻辑吗? 感谢任何帮助。 谢谢!

  • 问题内容: 是否可以使用CSS选择特定的网格列或行? 例如,假设我有一个3行2列的CSS网格布局:。如何从第二列中选择所有元素?例如:(仅是我的主意,无效的代码)。 我已经尝试过在元素上使用选择器,但是当网格布局引擎自动放置项目时,这不允许我指定行或列。 问题答案: CSS无法实现。 CSS针对HTML元素,属性和属性值。 网格列和行没有这些“挂钩”。 您必须直接定位网格项目。 你写了: 例如,假

  • 问题内容: 假设我的HTML已经被设置成石头了: 它看起来像这样: 现在,我想切换块的顺序。我该如何仅使用 CSS 来做到这一点? 我知道有一些骇人听闻的解决方案,例如using ,但这不能保留该属性的有效使用。也就是说,块随着大小的增加而将其他块向下推。 很长的故事 当用户使用计算机查看我的网页时,这些块将按以下顺序显示: 基本信息。 活动时间表。 iPhone应用广告 iPhone应用程序广告

  • 我试图创建一个简单的页面与CSS网格。 我没有做到的是将超文本标记语言的文本集中到相应的网格单元格。 我尝试过将内容放在单独的s内部和外部的和选择器中,并使用一些CSS属性,但没有效果。 我该怎么做?

  • 我正在尝试使用 json 对象的 s3api cli 为 aws 放置对象标记创建“TagSet”。我已经将 json 解析为哈希,这是我实现最终目标的最大成功。 示例 JSON: 结束目标示例: 到目前为止,我已经将 json 解析为哈希,然后使用以下方法将键和值拆分为 2 个数组: 我想我可以遍历每个数组,然后将它们插入到一个数组中。但是我得到的输出是一个递归列表,其中包含了每个值重复出现的所