calc()设置宽度等于自身的高度?

代码如下:

div{
    height: 50vw;
    width: -moz-calc(height);
    width: -webkit-calc(height);
    width: calc(height);
    background:#c7c7c7;
}




控制台输出结果

clipboard.png

calc() 没有这种用法吗 如果没有 该如何让自身宽度等于自身高度呢?

阅读 25.8k
2 个回答

calc里面不能直接用height,要是高度和宽度相等有以下三种方法:

div{
  width:20vw; /* viewport 的20% */
  height:20vw;
  background-color:green;
  margin-bottom:20px;
}

2.

div{
  width:20%;
  padding-top:20%; /* padding相对于父容器的宽度作为对比 */
  background-color:yellow;
  margin-bottom:20px;
}

3.

div{
  width: 20%;
  background-color:orange;
}
div:before{
  content:'';
  padding:50% 0;/* 此时padding相对于width:20%; */
  display:inline-block;
}

参考:
演示

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题