css之如何获取祖先元素的宽高

如何获取包含块之外的祖先元素的宽高

一、使用css变量

css 复制代码
  .container {
            width: 200px;
            height: 100px;
            background-color: #f0f0f0;
            --ancestor-width: 200px;
            --ancestor-height: 100px;
        }
        .box {
            width: 150px;
            height: 50px;
            background-color: #000;
        }
        .item {
            width: var(--ancestor-width);
            height: var(--ancestor-height);
            background-color: red;
        }

当祖先元素的宽高是百分比的时候还是挺有用的

二、使用容器查询

css 复制代码
    /* 
        方案1: 使用容器查询获取祖先元素宽度(推荐,现代浏览器)
         将祖先元素设置为容器
        */
        .container {
            container-type: inline-size;
            width: 200px;
            height: 100px;
            background-color: #f0f0f0;
        }
        .box {
            width: 150px;
            height: 50px;
            background-color: #000;
        }
        .item {
            /* 方案1: 使用容器查询(推荐)- 基于祖先容器宽度
                65cqw = 65% of container width (祖先元素.su-content的宽度) */
            width: 65cqw;
            height: 100%;
            background-color: red;
        }
相关推荐
耳东小鹿10 分钟前
对象常用方法
前端
程序员海军12 分钟前
一个 AI 应用开发程序员的一天,都在屏幕前忙些什么?
前端·后端·程序员
程序员黑豆34 分钟前
鸿蒙应用开发:Stack堆叠组件实战——实现微信消息角标效果
前端·harmonyos
夏幻灵1 小时前
浏览器原理深度解析:从输入 URL 到页面展现的全流程剖析
前端
闲猫1 小时前
Agent工程实践:从WorkFlow到多Agent协作的落地笔记
java·服务器·前端
带娃的IT创业者1 小时前
重新定义前端构建速度:深度解析 SWC 如何用 Rust 颠覆 JavaScript 工具链
前端·javascript·rust·前端构建·swc
happy_0x3f2 小时前
前端应用的离线暂停更新策略
开发语言·前端·php
你驴我2 小时前
WhatsApp 消息撤回与编辑的幂等性设计实践
java·服务器·前端·后端·python
新中地GIS开发老师3 小时前
零基础WebGIS开发入门 | GeoJSON数据持久化
前端·javascript·gis·webgis·三维gis开发
blns_yxl3 小时前
正则驱动实时表单验证(HTML+CSS+JS+正则)
javascript·css·html