【发布时间】:2021-09-17 20:19:22
【问题描述】:
如图所示,有两个元素:父元素(深灰色)和子元素(不那么深灰色)。父级的宽度和高度是可变的。孩子 i 的比例为 1:1 或 y:y,其中 y 等于父母的身高。
我试图找到使用 flex、calc、padding 等解决此问题的方法,但已经走到了尽头。非常感谢任何如何使用纯 CSS 解决此问题的想法。
编辑:我现在意识到我应该添加有关此场景使用的更多详细信息。以及我认为的动态高度。对我来说,动态高度表明高度取决于它包含的内容量。所以我添加了一些 HTML 来澄清。如果您可以将内容直接放在 .container div 中,则 .content div 可能是不必要的。但这取决于你如何编写 CSS:
<div class="container">
<div class="content">
Here is some text. It can be long and it can be short.
It will affect the height of the .container thus also
the height and width of the .square.
</div>
<div class="square">1:1</div>
</div>
【问题讨论】:
-
您尝试过的任何代码?
-
深色元素的高度是从哪里来的?
-
所以你的问题是如果宽度是动态的,如何使元素的高度等于它的宽度。?
-
你能发布这个 HTML 吗?
-
@MikeHarrison 显然,HTML 是
<div><div></div></div>;)