用css实现正方形div

匿名 (未验证) 提交于 2019-12-02 20:32:16

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

方法一:使用单位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,不过会有塌陷的危险,所以,就这两个够用啦~~

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!