html - 将元素的高度设置为等于元素的宽度

标签 html css

我想将一个 div 的高度设置为等于一个 div 的宽度。棘手的是 div 没有设置宽度,因为它是响应式的。我附上了我的目标图片。我只想为此使用 CSS。

  <ion-grid>
    <ion-row>
      <ion-col>
        <ion-icon  name="add"></ion-icon>
        <h3>SIDE</h3>
      </ion-col>
      <ion-col>
        <ion-icon name="add"></ion-icon>
        <h3>FRONT</h3>
      </ion-col>
    </ion-row>
    <ion-row>
      <ion-col>
        <ion-icon name="add" ></ion-icon>
        <h3>TOP</h3>
      </ion-col>
      <ion-col>
        <ion-icon name="add" ></ion-icon>
        <h3>SEAT</h3>
      </ion-col>
    </ion-row>    
  </ion-grid>

enter image description here

最佳答案

如果您希望它是像素完美的(相同的高度,相同的宽度),您可以使用这个公式:

.stretchy-wrapper {
    width: 100%;
    padding-bottom: 100%; /* 1:1 */
    position: relative;
}

内部:

.container-div {
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
}

这是一个 js fiddle :https://jsfiddle.net/a2j4sv2n/3/ .

关于html - 将元素的高度设置为等于元素的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44506856/

相关文章:

javascript - 确定 IFrame 加载后何时渲染 iFrame 内容

javascript - 响应我的命令的倒数计时器

html - 如果内容可滚动,则位置按钮始终位于同一位置

javascript - 为什么文档选择器不适用于 mouseenter 事件?

css - 使用内联 CSS 的 GMail 电子邮件中的水印 - 无法使用 STYLE 标签 - 在电子邮件正文中心覆盖透明图像

javascript - 如何防止在我的 Chrome 扩展程序中放大弹出窗口

css - 我想在一行中保留三个不同宽度的 div,一个在左边,一个在中间,一个在右边

css - 平板电脑屏幕媒体查询多屏幕因素

javascript - 注册单击列表项子元素

html - 在 html 中嵌入 mp3