Flexbox,保持纵横比的方形 div 的响应式网格

2024-04-25

我正在尝试用 div 创建一个 2x2 网格。某些 div 可能包含图像,但它可能会被设置为背景,并带有选项background-size: cover.

这是我创建的笔:http://codepen.io/qarlo/pen/vLEprq http://codepen.io/qarlo/pen/vLEprq

.container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: auto;
  max-width: 960px;
  width: 80%;
}
.container__item {
  align-content: center;
  border: 1px solid #333;
  display: flex;
  flex-basis: 1;
  font-size: 3em;
  justify-content: center;
  height: 100%;
  margin-bottom: 1em;
  min-height: 300px;
  width: 47%;
}
<div class="container">
  <div class="container__item">?</div>
  <div class="container__item">?</div>
  <div class="container__item">?</div>
  <div class="container__item">?</div>
</div>

我想强制 div 为正方形并在调整其大小时保持纵横比。我错误地希望这对于 Flexbox 来说是简单的,但除非我遗漏了一些东西,否则我错了。


要保持项目的长宽比,一个非常简单的方法是使用CSS 视口单位 http://tutorialzine.com/2015/05/simplify-your-stylesheets-with-the-magical-css-viewport-units/

我修改了你的笔来看看这个单位是如何工作的:http://codepen.io/vladbicu/pen/wMBmOb http://codepen.io/vladbicu/pen/wMBmOb

.container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: auto;
    max-width: 960px;
    width: 80%;
}

.container__item {
    align-content: center;
    border: 1px solid #333;
    display: flex;
    flex-basis: 1;
    font-size: 3em;
    justify-content: center;
    margin-bottom: 1em;

    // maintain aspect ratio
    width: 30vw;
    height: 30vw;
}

希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flexbox,保持纵横比的方形 div 的响应式网格 的相关文章

  • 从“class”名称中删除/替换不需要的前缀信息

    我正进入 状态style从后端 它带有不需要的前缀 我会替换没有前缀的相同内容 正确的方法是什么 这就是我得到的
  • rgb() 和 rgba() 不透明度有什么区别?

    我发现另一个关于 rgb 与 rgba 的问题非常相似 但它缺少关于使用的答案RGB 不透明度 我知道两者之间的区别 rgba 只是 rgb 但带有 alpha 不透明度 问题是 我使用带有不透明度值的 RGB 已经有几个月甚至几年了 它一
  • 添加额外的字形到引导程序

    亲爱的设计师 开发人员同事 我为我的 bootstrap 网站创建了 8 个额外的字形图标 将它们上传到 icomoon 并下载为字体 这一切都很完美 我可以将我的字体添加到我的 CSS 中并在 HTML 中使用它 没有任何问题 但我想使用
  • 如何让浮动的div对齐到顶部?

    下面的代码可以在这个小提琴中查看 http jsfiddle net VgG55 10 http jsfiddle net VgG55 10 我有以下标记 其中 div 按以下顺序放置 div class wrapper div class
  • CSS位置:绝对+动态高度

    我有 4 个 div 标签一个接一个 全在position absolute我使用它们对齐top and left 第三个 div 标签包含动态内容 并且 div 的高度根据其中的文本量而变化 然而 当我设置top and left在所有
  • 浏览器特定的 CSS 属性

    在哪里可以找到完整的 浏览器特定 css 属性 参考 我的意思是一些属性 例如 moz border radius这仅适用于 Firefox 或 webkit min device pixel ratio 这些示例仅适用于指定的 Web 浏
  • 何时使用
    换行符 vs CSS 定位?

    我经常想知道如何正确使用 br 越线 似乎它们经常被错误地用于定位或清除应该使用 CSS 的内容 W3schoools org 说使用 br 适用于空白行 但不适用于创造或分离 http www w3schools com tags tag
  • 允许指针(单击)事件穿过元素,同时保持滚动功能

    我的目标是拥有一个允许 下面要点击 交互的元素 滚动 众所周知 1 的解是pointer events none 这正如中所描述的单击 DIV 到底层元素 https stackoverflow com questions 3680429
  • 在引导程序中使用容器流体会导致水平滚动条

    这是一个简单的例子 div class container fluid div class row div class col lg 12 DUMMY CONTENT div div div Fiddle 演示 http jsfiddle
  • 如何使用 Unity 在 Android 设备上以各种宽高比显示游戏的相同部分?

    我从 Libgdx 引擎转向 Unity 是一名初级程序员 我尝试在 Unity 中为 Android 和 iOS 设备制作游戏 但在宽高比 分辨率缩放方面遇到问题 在 Libgdx 中 如果您开发了一些东西 您可以指定 默认 分辨率 并且
  • 如何更改引导弹出窗口箭头边框颜色而不填充它?

    我想更改弹出箭头的边框颜色 当我应用边框颜色时 箭头本身填充了颜色 我只想为弹出框主体的箭头边框提供颜色 p Click on button to see Popover p a href class btn btn primary pop
  • 转换 SVG 过滤器

    我正在尝试创建一个像 SVG 圆圈上的阴影这样的材质设计 我希望当您单击圆圈时 这个阴影能够以良好的过渡来增长 但目前我正在努力弄清楚是否可以为这种过渡设置动画 所以我希望有人能够提供帮助 我添加了一个到目前为止所得到的小例子 一个带有阴影
  • Bootstrap:使用单个选项卡导航控制多个选项卡面板

    我想用一个选项卡导航来控制两个不同的选项卡内容 在 Bootstrap 3 中 我有一个使用逗号分隔数据目标的解决方案 如本例所示 https stackoverflow com a 19719859 1788961 https stack
  • 为什么连字符 (-) 分隔的类名在 CSS 中广泛使用 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在浏览了一些网站和其他一些广泛使用的插件和框架中包含的一些 CSS 文件时 发现它们广泛使用连字符分隔的单词作为类名 实际上使用这样的类名有什么
  • 电子邮件模板 - MS Office Outlook 365 中不显示表格背景图像

    为了电子邮件模板的目的 我需要在 table 它包含图像上的文本 现在我已经尝试过 https stackoverflow com a 15620571 6191987 https stackoverflow com a 15620571
  • jQuery - 拖动div css背景

    我希望能够在 div 内按住鼠标并移动它的背景 在谷歌上搜索了很多 没有找到我想要的 这是目标 显示的地图是要拖动的对象 http pontografico net pvt gamemap http pontografico net pvt
  • 无法做到最大宽度

    我有一个页面 内容如下 div testingtestingtestingtestingtestingtestingtestingtestingtesting testingtestingtestingtestingtestingtesti
  • SVG 剪辑路径在 Safari 上不起作用

    我有一个简单的动画 从下往上填充 svg 然后淡出 填充是使用clipPath随着使用path with a stroke dasharray stroke dashoffset 问题是clipPath在 Safari 上似乎完全被忽略了
  • 如何更改 div 悬停时的跨度颜色

    我正在尝试更改 div 悬停时跨度的颜色 如何使红色汉堡按钮 即跨度 在 div 悬停时将颜色更改为黑色 PS 现在它在跨度的悬停上执行此操作 JSFiddle https jsfiddle net bjjbqct8 https jsfid
  • CSS 字体在 Firefox 中不起作用

    我下面有这个字体代码 它在谷歌浏览器中工作正常 但在火狐浏览器中根本不起作用 为什么

随机推荐

  • 在RequiredFieldValidator 触发后调用JavaScript 方法?

    表单元素被视为无效后是否可以触发 JavaScript 方法 这是我的场景 ASPX 页面上有 2 个选项卡 用户必须在两个选项卡上填写信息 用户在选项卡 2 上单击提交按钮 但是 第一个选项卡上有一个必填字段需要注意 我是否需要创建自定义
  • 无法使用 conda 安装 mpi4py 并指定预安装的 mpicc 路径

    我已经尝试安装mpi4py with env MPICC path to openmpi bin mpicc conda install c anaconda mpi4py 但我收到这样的消息 The following NEW packa
  • 无法播种用户和角色

    我正在尝试将用户和角色植入我的数据库中 目前在 C MVC4 中使用具有自动迁移功能的 Code First 实体框架 每当我打电话 更新数据库 强制 我收到以下错误 运行种子方法 System InvalidOperationExcept
  • B 样条线混淆

    我意识到这个板上有关于 B 样条主题的帖子 但这些帖子实际上让我更加困惑 所以我想有人可能能够帮助我 我有 x 值范围从 0 到 1 的模拟数据 我想用三次样条拟合我的数据 degree 3 结为 0 0 1 0 2 0 9 1 我还想使用
  • 从日期选择器小部件中隐藏年份

    我试图从日期选择器小部件中隐藏年份字段 这可能看起来像一个重复的问题 但之前问题给出的答案并不能帮助我隐藏年份字段 这是我的代码 Override protected void onCreate Bundle savedInstanceSt
  • 为什么没有像 ruby​​ 的 capybara for java 这样的无头 BDD 测试引擎?

    为什么没有 java 版本的 ruby capybara https github com jnicklas capybara https github com jnicklas capybara 这可以与 tomcat 或其他东西一起使用
  • 如何在 PyGame 中加载多个图像?

    我需要在 pygame 中加载大约 200 个图像 以便在游戏中的各个点进行位块传输 我尝试为此编写一个函数 但总是回来NameError name tomato is not defined 所有图像名称都是加载图像的变量存储的名称 to
  • 设置分组条形图之间的间距

    我正在尝试按照图库中的示例在 matplotlib 中制作分组条形图 我使用以下内容 import matplotlib pyplot as plt plt figure figsize 7 7 dpi 300 xticks 0 1 1 1
  • 本地播放 mp3 时 Android MediaPlayer 错误(1, -2147483648)

    Android 4 4 发布后不久 我的代码自 2 2 以来一直正常工作 突然出现了错误 我的代码将查询音乐数据库中给定的音乐文件 该路径在查询中返回 然后该路径被传递到 MediaPlayer Code String uri conten
  • 在reactjs中以编程方式取消选中复选框

    我正在弄乱复选框 我想知道有没有一种方法可以通过调用函数来取消选中单击按钮时的复选框 如果是这样 我怎样才能做到这一点
  • 实现类 Markdown 语言的解析器

    我有类似于 markdown 和 SO 使用的标记语言 遗留解析器基于正则表达式 维护起来简直是噩梦 因此我提出了自己的基于 EBNF 语法的解决方案 并通过 mxTextTools SimpleParse 实现 但是 某些令牌可能存在相互
  • CMake 64 位和 SFML 64 位

    我正在尝试使用适用于 Windows 的 CMake 64 位和 SFML 2 5 1 64 位构建 C 项目 当我在项目上运行 cmake 时 我收到一条错误消息 我能让它工作的唯一方法是改变CMAKE PREFIX PATH指向 SFM
  • 读取请求正文两次

    我试图读取中间件中的主体以进行身份 验证 但是当请求到达 api 控制器时 对象为空 因为主体已被读取 有没有办法解决 我在中间件中像这样读取正文 var buffer new byte Convert ToInt32 context Re
  • 如果图像比其容器宽,如何将图像居中?

    通常 您将图像居中display block margin auto 但如果图像比容器大 则会向右溢出 如何使其均匀地向两侧溢出 容器的宽度是固定且已知的 图像的宽度未知 纯CSS解决方案 需要一个额外的包装器 在 FireFox IE8
  • 不同数据类型的内存对齐方式是否不同

    在C中执行不同的数据类型 例如char short int long float double有不同的内存对齐边界吗 在 32 位字对齐字节可寻址操作系统中 如何访问char or short与访问不同int or float 在这两种情况
  • html5在移动设备中自动播放视频

    Auto play is not working without muted attribute when I try to open url in mobile device How to play video without using
  • PreLoader 的多线程 - JavaFX

    我正在开发一个 JavaFX 应用程序 需要在启动主应用程序阶段之前从文件中加载资源 我完成此任务的解决方案是使用 PreLoader 以便用户在加载资源之前无法与应用程序交互 非常标准的东西 我有一个扩展 PreLoader 类的类 该类
  • 有没有办法从 VS2010 中的建模项目生成代码?

    有没有办法从 VS2010 中的建模项目生成代码 看来这个功能即将到来 但 Beta2 中还没有 微软的拉梅什 拉贾戈帕尔回答类似的问题 http social msdn microsoft com Forums en US vstspre
  • 如何将回车符作为字符添加到文件中?

    我想要一个像这样的字符串 blablbabla
  • Flexbox,保持纵横比的方形 div 的响应式网格

    我正在尝试用 div 创建一个 2x2 网格 某些 div 可能包含图像 但它可能会被设置为背景 并带有选项background size cover 这是我创建的笔 http codepen io qarlo pen vLEprq htt