目标:实现一个正方形,这个正方形边长等于

方法一:使用单位vw, (ps我觉得这个是最简单的方法)

html结构也很简单,只有一个div即可

<html>
<body>
    <div class="square">
   </div>
</body>
</html>
.square{
  width: 50vw;
  height: 50vw;
  background: blue;  
}

方法二: 使用padding-bottom

要点:
 

1.height: 0, 内容会溢出到padding里,不用担心~~
 

2.padding-bottom 值设置为百分比时候,相对于包含块的宽度。
 

3.需要设置包含块

html结构:

<html>
<body>
    <div class="container">
       <div class="square">
       </div>
   </div>
</body>
</html>

css:

*{
        margin: 0;
    }
    /* 设置撑满页面可见区域 */
    .container{
        height: 100vh; 
        width: 100vw;
        background: palegoldenrod;
    }
    .square{
        width: 50%; /* 相对与container的width */
        padding-bottom: 50%;  /* 相对与container的width */
        background: palegreen;
    }

行了吧,两种就可以了,你也可以使用margin,不过会有塌陷的危险,所以,就这两个够用啦~~
 

总结

以上所述是小编给大家介绍的用css实现正方形div 的两种方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!