讲师中心 微信公众号

工具推荐

视频效率加速
剧云
剧云

中文短剧剧本制作平台

Seko
Seko

AI短剧一键生成成片

Laper
Laper

剧本策划到成片协作

AniShort
AniShort

AI短剧协同制作平台

如何在 CSS Grid 布局中将文本框与图片网格并排对齐

夏墨君_8425

夏墨君_8425

发布时间:2026-01-10 13:56:58

|

247人浏览过

|

来源于php中文网

原创

如何在 CSS Grid 布局中将文本框与图片网格并排对齐

本文讲解如何通过 flexbox 容器协调文本区域与 grid 图片布局,实现左侧文字、右侧 2×2 图片网格的水平对齐,避免因 `transform` 偏移导致的错位问题。

在构建响应式图文布局时,常见的误区是将文本和网格分别置于独立容器中,再依赖 margin 或 position 强行拼接——这极易引发垂直错位、溢出或响应失效。正确做法是:用一个统一的 Flexbox 容器作为顶层布局骨架,内部按需嵌套语义化子容器(如 .overview 文本区 + #grid-container 网格区)。

✅ 正确结构:Flex 主轴驱动左右并列

将

作为最外层容器,并确保其子元素(文本区与网格区)自然沿主轴(默认 row)排列:
<div class="flex-box">
  <div class="overview"> <!-- 左侧文本 -->
    <div class="overview-text">
      <h1>Overview Text</h1>
      <p>...</p><div class="aritcle_card flexRow">
                                                        <div class="artcardd flexRow">
                                                                <a class="aritcle_card_img" href="/xiazai/skill12116" title="DeepBI DHTML 页面生成器"><img
                                                                                src="https://img.php.cn/upload/skill/001/246/273/6adaf20d3191a227.jpg" alt="DeepBI DHTML 页面生成器" ></a>
                                                                <div class="aritcle_card_info flexColumn">
                                                                        <a href="/xiazai/skill12116" title="DeepBI DHTML 页面生成器">DeepBI DHTML 页面生成器</a>
                                                                        <p>生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力:

- 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面;  
- 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”;  
- 提及位于 `apps/console/src/featur</p>
                                                                </div>
                                                                <a href="/xiazai/skill12116" title="DeepBI DHTML 页面生成器" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
                                                        </div>
                                                </div>
    </div>
  </div>
  <div> <!-- 右侧网格(无额外包裹类,避免干扰) -->
    <div id="grid-container">
      <div class="grid-item"><img  src="..." alt="如何在 CSS Grid 布局中将文本框与图片网格并排对齐" ></div>
      <!-- 其余3个 grid-item -->
    </div>
  </div>
</div>

对应 CSS 需明确控制:

立即学习“前端免费学习笔记(深入)”;

  • .flex-box 启用 display: flex 并设置对齐方式;
  • 移除 .overview 的 width: 30%(易导致缩放异常),改用 flex: 1 实现弹性分配;
  • #grid-container 不再设 margin: 0 auto(会破坏 Flex 对齐),改为 margin-left: auto 或直接依赖 Flex 自动间距。
.flex-box {
  display: flex;
  align-items: flex-start; /* 关键:顶部对齐,避免“图片坐低” */
  gap: 40px; /* 推荐替代 margin,更可控 */
  padding: 20px;
}

.overview {
  flex: 1; /* 自适应宽度,不硬编码百分比 */
  max-width: 400px; /* 防止过宽影响可读性 */
}

#grid-container {
  width: 600px;
  height: 600px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  /* 删除 transform 偏移!这是错位根源 */
  /* 若需微调位置,请改用 grid-gap / padding / justify-content */
}

⚠️ 关键注意事项

  • 禁用 transform 调整网格项位置:你原代码中大量使用 transform: translate(...) 打乱了 Grid 的天然定位流,不仅造成视觉错位,还使元素脱离文档流(影响 align-items 生效)。应优先通过 grid-column/grid-row、justify-self/align-self 或 gap 控制布局。
  • 避免 ID 重复:如何在 CSS Grid 布局中将文本框与图片网格并排对齐 在多个元素中重复出现,违反 HTML 规范(ID 必须唯一)。请改用 class="grid-image"。
  • 响应式增强建议:在小屏下可切换为垂直堆叠:
    @media (max-width: 768px) {
      .flex-box { flex-direction: column; }
      #grid-container { width: 100%; height: auto; }
    }

✅ 最终效果验证要点

  1. 文本区与图片网格顶部严格对齐(align-items: flex-start);
  2. 两者间留有合理间距(gap 替代魔数 margin-left);
  3. 图片网格自身保持 2×2 均匀分布,无重叠或空白断裂;
  4. 所有内容在不同视口下保持语义清晰与视觉平衡。

通过将 Flexbox 作为宏观布局层、CSS Grid 作为微观内容层,既能发挥各自优势,又能规避混合布局中的常见陷阱。

热门AI工具

更多
音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

码上飞
码上飞 Hot

一款基于自然语言的AI应用开发平台,可根据用户描述自动生成应用程序,帮助个人和团队快速完成应用原型与开发。

相关专题

更多
堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

6807

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

2808

2023.08.10

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

4516

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

326

2025.12.06

CSS position定位有几种方式
CSS position定位有几种方式

有4种,分别是静态定位、相对定位、绝对定位和固定定位。更多关于CSS position定位有几种方式的内容,可以访问下面的文章。

352

2023.11.23

margin在css中是啥意思
margin在css中是啥意思

在CSS中,margin是一个用于设置元素外边距的属性。想了解更多margin的相关内容,可以阅读本专题下面的文章。

877

2023.12.18

flex教程
flex教程

php中文网为大家带来了flex教程合集,Flex是采用Flex布局的元素,称为Flex容器(flex container),简称"容器",它的所有子元素自动成为容器成员,有三个核心概念: flex项,需要布局的元素;flex容器,其包含flex项;排列方向,这决定了flex项的布局方向。php中文网还为大家带来flex的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

11497

2023.06.14

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

40

2026.11.06

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

20

2026.11.06

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn