Html 分区';s height=它的宽度,以百分比表示,因此div看起来像一个正方形,容器元素的形状为非正方形(仅CSS)
我已经用百分比设置了元素的宽度和高度,这样它们在更大的屏幕上看起来更大一些,在普通屏幕上看起来更正常。我还设置了Html 分区';s height=它的宽度,以百分比表示,因此div看起来像一个正方形,容器元素的形状为非正方形(仅CSS),html,css,Html,Css,我已经用百分比设置了元素的宽度和高度,这样它们在更大的屏幕上看起来更大一些,在普通屏幕上看起来更正常。我还设置了min height和min width,这样在屏幕太小的情况下,布局就不会扭曲。我希望我的一个元素显示为正方形,但我无法想出一个CSS唯一的解决方案 以下是我尝试过的:,但没有成功 这是可行的:,但它使用JS。看看这个:你需要一个外部的作为容器,然后一个内部的作为正方形 我对正方形使用了50%的尺寸,但您可以使用所需的尺寸:它将相对于父容器 我还给了它一个黑色的背景色来突出它:这里有
min height
和min width
,这样在屏幕太小的情况下,布局就不会扭曲。我希望我的一个元素显示为正方形,但我无法想出一个CSS唯一的解决方案
以下是我尝试过的:,但没有成功
这是可行的:,但它使用JS。看看这个:你需要一个外部的
作为容器,然后一个内部的作为正方形
我对正方形使用了50%的尺寸,但您可以使用所需的尺寸:它将相对于父容器
我还给了它一个黑色的背景色来突出它:这里有一个
技巧全在父级
的填充底部:100%
CSS:
HTML:
您必须为容器设置一个明确的高度,或者内部的框从容器的内容而不是容器本身获取其高度,由于您的容器不是正方形,并且没有明确的高度或宽度,因此js解决方案是正确的。但是,如果容器元素本身不是正方形,则会失败:它会失败,因为它基于父容器维度。将500和1500作为最小维度应用于父容器会使其显示为矩形。这是一个惊人的结果如果div是正方形,则为解决方案。它具有100%的响应能力,可以完美地与引导和转换配合使用。考虑到特别提出的关于正方形的问题,回答得很好。
#container {
position: relative;
width: 100%;
padding-bottom: 100%;
}
#square {
position: absolute;
width: 50%;
height: 50%;
background-color: #000000;
}
<div id="container">
<div id="square">
</div>
</div>