javascript - 以 % 为单位的 CSS 宽度和以 px 为单位的高度,两者的长度相同

标签 javascript css html

<分区>

我尝试制作的是随屏幕大小而变化的正方形。

所以我将宽度设置为 25%。 如何确保高度与宽度保持相同的长度(以像素为单位)?

提前致谢。

最佳答案

你可以使用顶部/底部 padding以百分比表示的属性,以实现结果。

Example Here .

.box {
    width: 25%;
    padding-bottom: 25%;
}

A percentage value在顶部/底部 paddingmargins是相对于框的包含 block 的宽度。

8.4 Padding properties: 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', and 'padding'

<percentage> The percentage is calculated with respect to the width of the generated box's containing block, even for 'padding-top' and 'padding-bottom'.


添加内容

由于盒子的高度会随着内容的增加而增加,我们可以用元素包裹内容 .wrapper并相对于盒子绝对定位,然后使用 top , right , leftbottom填充框的整个空间的属性。

Example Here

<div class="box">
  <div class="wrapper">
    <!-- content goes here... -->
  </div>
</div>
.box {
  width: 25%;
  position: relative;
}

.box:after {
  content: "";
  display: block;
  padding-top: 100%; /*  1:1 square */
}

.box > .wrapper {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
}

更多信息您可以引用my answer here (响应式容器部分)

关于javascript - 以 % 为单位的 CSS 宽度和以 px 为单位的高度,两者的长度相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22507231/

相关文章:

html - 如何以像素为单位指定图像大小

javascript - 如何使用 Firefox 扩展注入(inject) Javascript

javascript - 如何从节点中删除文本?

javascript - jquery.load 函数

css - IE8位置相对负值问题

html - IE 中丢失的样式

javascript - 我的前端 javascript 文件无法访问其他 javascript 文件中的变量

jquery - Bootstrap 3 导航栏切换按钮没有功能

PHP CSS 移动响应

javascript - 避免在 ParcelJS 上的 HTML 文件中重命名 JS 变量