本文使用响应式图像库探讨了掌握响应网格布局中列之间间距的技术。
>>要进一步了解响应式布局,请查看我们的屏幕截图:在Flexbox中创建多列布局。
钥匙要点:
- 可以通过精确控制柱间间距来实现自定义响应的布局,如响应式图像库所证明的那样。
-
display: inline-block
方法创建响应式图像库;将父字体的大小设置为零,删除了默认的内联窗口间距。 >
- Flexbox有效地解决了常见的布局问题,在所有屏幕尺寸上创建了相等的高度列,从而简化了响应式图像网格中的柱间间距控制。 >媒体查询和CSS网格布局启用响应式图像网格,根据设备特征(屏幕尺寸)应用不同的CSS规则。
构建一个响应式布局:>
在较大的屏幕上,画廊类似于以下内容:>
<div> <a href="https://www.php.cn/link/14d2bc475177e1dde633b4ca1972d53c"> <img src="/static/imghwm/default1.png" data-src="https://img.php.cn/?x-oss-process=image/resize,p_40" class="lazy" alt="Using Modern CSS to Build a Responsive Image Grid " /> </a> <!-- ...more images... --> </div>几种布局方法实现了这一目标。 在探索两个之前,让我们重申要求:
- 在中屏和较小的屏幕上的两列布局。
- 8px柱间间距。
使用:inline-block
方法构建画廊。 考虑一下此CSS:display: inline-block
div { font-size: 0; } a { font-size: 16px; display: inline-block; margin-bottom: 8px; width: calc(50% - 4px); margin-right: 8px; } a:nth-of-type(2n) { margin-right: 0; } @media screen and (min-width: 50em) { a { width: calc(25% - 6px); } a:nth-of-type(2n) { margin-right: 8px; } a:nth-of-type(4n) { margin-right: 0; } }>说明:
通过将父字体大小设置为零来覆盖
默认的内联块间距。 子元素字体大小可能需要重置(不在此)。>
小屏幕具有两个列布局,带有8px间距。 列宽度计算:
- >每行的总列空间:1 * 8px = 8px(8px,而不是16px,因为从每个第二列中删除了右边缘)。
- > 列宽度:
- (4px = 8px / 2)。
calc(50% - 4px)
- >每排总列空间:3 * 8px = 24px(24px,而不是32px,因为从每个第四列中删除了右边缘)。
- 列宽: (6px = 24px / 4)。
- >
calc(25% - 6px)
请参阅
>
使用flexbox:
inline-block
解决方案具有缺点。 添加标题演示一个:
更新的标记:
<div> <a href="https://www.php.cn/link/14d2bc475177e1dde633b4ca1972d53c"> <img src="/static/imghwm/default1.png" data-src="https://img.php.cn/?x-oss-process=image/resize,p_40" class="lazy" alt="Using Modern CSS to Build a Responsive Image Grid " /> </a> <!-- ...more images... --> </div>
>带有标题的大屏幕库:
不相等的高度。 更新父元素的CSS:
div { font-size: 0; } a { font-size: 16px; display: inline-block; margin-bottom: 8px; width: calc(50% - 4px); margin-right: 8px; } a:nth-of-type(2n) { margin-right: 0; } @media screen and (min-width: 50em) { a { width: calc(25% - 6px); } a:nth-of-type(2n) { margin-right: 8px; } a:nth-of-type(4n) { margin-right: 0; } }
结果是在所有屏幕上相等的高度列。大屏幕示例:
>使用带有改进字幕的Flexbox请参阅Codepen演示。
> Flexbox的属性并未直接创建此布局。 justify-content
>和space-between
在最后一行导致尴尬的分布。 CSS:space-around
<div> <a href="https://www.php.cn/link/14d2bc475177e1dde633b4ca1972d53c"> <img src="/static/imghwm/default1.png" data-src="https://img.php.cn/?x-oss-process=image/resize,p_40" class="lazy" alt="Using Modern CSS to Build a Responsive Image Grid " /> <figcaption>Some text here</figcaption> </a> <!-- ...more images... --> </div>>否
需要; margin-right
处理项目分布。justify-content
属性参见Codepen演示。justify-content
结论:
>。
inline-block
calc()
在我们的屏幕截图中了解有关Flexbox布局的更多信息:在Flexbox中创建多列布局。
> >(为简洁而省略了FAQ部分,因为这是对常见响应式设计问题的重复。)
以上是使用现代CSS构建响应式图像网格的详细内容。更多信息请关注PHP中文网其他相关文章!

这是我们在形式可访问性上进行的小型系列中的第三篇文章。如果您错过了第二篇文章,请查看“以:focus-visible的管理用户焦点”。在

本教程演示了使用智能表单框架创建外观专业的JavaScript表单(注意:不再可用)。 尽管框架本身不可用,但原理和技术仍然与其他形式的建筑商相关。

CSS盒子阴影和轮廓属性获得了主题。让我们查看一些在真实主题中起作用的示例,以及我们必须将这些样式应用于WordPress块和元素的选项。

Svelte Transition API提供了一种使组件输入或离开文档(包括自定义Svelte Transitions)时动画组件的方法。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。