求大佬解惑:高度与宽度百分比设置问题

求大佬解惑:高度与宽度百分比设置问题

下面代码flex项目设置了aspect-ratio:1后,其中的img元素的widthheight的百分比是相对于什么值?为啥增加文字后,整体items会被撑大,但是img大小并不会变化?难道其中有计算顺序的问题?如果有那么这些知识该去哪里学习?求大佬解惑

HTML 复制代码
<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
  <title>🖼️ 图片撑满格子 vs 未撑满对比示例</title>
  <style>
    /* 页面基础样式 */
    body {
      margin: 0;
      font-family: Arial, sans-serif;
      background-color: #f5f5f5;
      padding: 20px;
    }

    h1, h2 {
      text-align: center;
      color: #333;
    }


    .grid-container-bad {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
      gap: 20px;
      max-width: 600px;
      margin: 40px auto;
    }

    .grid-item-bad {
      aspect-ratio: 1;
      background: #ffe;
      border: 2px solid #999;
      border-radius: 8px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      padding: 10px;
    }

    .grid-item-bad img {
      width: 100%;    /* 这里的宽度和高度百分比是如何计算出来的? */
      height: 100%;
      object-fit: cover;
    }

    .grid-item-bad p {
      margin: 5px 0 0;
      font-size: 12px;
      text-align: center;
    }

   
  </style>
</head>
<body>

  <div class="grid-container-bad">
    <div class="grid-item-bad">
      <img src="https://picsum.photos/300/300?random=5" alt="图片5">
      <p>图片+文字</p>
    </div>
    <div class="grid-item-bad">
      <img src="https://picsum.photos/300/300?random=6" alt="图片6">
      <p>图片+文字</p>
    </div>
    <div class="grid-item-bad">
      <img src="https://picsum.photos/300/300?random=7" alt="图片7">
      <p>图片+文字</p>
    </div>
    <div class="grid-item-bad">
      <img src="https://picsum.photos/300/600?random=8" alt="图片8">
      <p>图片+文字</p>
    </div>
  </div>

</body>
</html>
相关推荐
青禾网络几秒前
前端做音画匹配这件事,我从"随机塞"到"AI 自动对齐"
前端·github
2601_963771371 小时前
Hardening Enterprise WordPress Sites Against REST API Leaks and Bad Headers
前端·windows·word·php
蓝银草同学1 小时前
Stream 实战:博客列表排序、过滤与分页(AI 辅助学习 Java 8)
java·前端·后端
2601_957190901 小时前
飞行影院安装施工指南:场地、动感系统与影片内容配套
大数据·前端·人工智能
爱折腾的小黑牛1 小时前
简记往来批量录入功能的实现:从文本到结构化数据
前端·算法
YHHLAI1 小时前
Agent 智能体开发实战 · 第六课:MCP 协议 —— 让 Agent 跨进程调用工具
前端·人工智能
SmartBoyW2 小时前
前端死磕:一文彻底搞懂 JS 事件循环 (Event Loop) 与宏微任务
前端·javascript
爱勇宝2 小时前
3位工程师靠“删AI代码”创业,一周收费1万美元:以后最贵的能力,可能不是写代码
前端·后端·架构
Curvatureflight2 小时前
客户端日志上报怎么设计?让线上问题不再只靠用户截图
前端·系统架构