css实现高度是宽度一半的效果

1、方法一:使用变量:root、var()、clac()实现:

1.1 效果如下:

2.2 代码如下:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    :root {
      --width: 200px;
      --height: calc(var(--width) / 2)
    }
    .box {
      width: var(--width);
      height: var(--height);
      background-color: #ccc;
    }
  </style>
</head>
<body>
<div class="box"></div>
</body>
</html>

2、方法二:使用padding来实现(padding会相对于宽度进行计算):

2.1效果如下:

2.2代码如下:

css 复制代码
  <style>
    .outer-box {
      width: 200px;
    }
    .inner-box {
      width: 100%;
      padding-bottom: 50%;
      background-color: #ccc;
    }
  </style>
html 复制代码
<body>
	<div class="outer-box">
	  <div class="inner-box"></div>
	</div>
</body>
相关推荐
叶梅树2 小时前
DocsJS npmjs 自动化发布复盘(Trusted Publisher)
前端·npm
我命由我123452 小时前
Element Plus - Form 的 resetField 方法观察记录
开发语言·前端·javascript·vue.js·html·html5·js
清空mega3 小时前
《Vue3 项目结构详解:components、views、assets、router、stores 到底该怎么理解?》
前端·javascript·vue.js
雨雨雨雨雨别下啦4 小时前
Vue——小白也能学!Day6
前端·javascript·vue.js
XPoet4 小时前
AI 编程工程化:Hook——AI 每次操作前后的自动检查站
前端·后端·ai编程
難釋懷4 小时前
RedisTemplate配置读写分离
前端·bootstrap·html
冰暮流星4 小时前
javascript如何实现删除数组里面的重复元素
开发语言·前端·javascript
网络点点滴6 小时前
透传属性$attrs
前端·javascript·vue.js
90后的晨仔6 小时前
OpenClaw macOS 完整安装指南
前端
Moment6 小时前
尤雨溪宣布 Vite+ 正式开源,前端工具链要大一统了
前端·javascript·面试