这里介绍7种方法,仅供参考。

1、vm单位

<div class="square-shape">这是一个可以自适应的正方形,此法适用于移动端web页面。</div>
.square-shape {width: 50%;height: 50vw;border: 1px solid #f00;
}

2、padding-top实现

<div class="square-shape">这是一个可以自适应的正方形,设置高度避免被内容撑开多余的高度。奇怪的是,内容在框框外面。</div>
.square-shape {width: 50%;height: 0; padding-top: 50%;border: 1px solid #f00;
}

3、padding-bottom实现

<div class="square-shape">这是一个可以自适应的正方形,此法很好用,有内容也是正方形。</div>
.square-shape {width: 30%;height: 0;padding-bottom: 30%;border: 1px solid #f00;
}

4、伪元素的margin-top

<div class="square-shape">这里如果有内容,就不是正方形喽,限制height也没有用。</div>
.square-shape {width: 100%;overflow: hidden;border: 1px solid #f00;
}
.square-shape:after {content: '';display: block;margin-top: 100%;
}

5、伪元素的padding-top

<div class="square-shape">这里如果有内容,就不是正方形喽。</div>
.square-shape {width: 30%;max-width: 200px;  border: 1px solid #f00;
}
.square-shape:after {content: '';display: block;padding-top: 100%;
}

6、子元素margin-top

<div class="square-shape"><div class="content">这是一个可以自适应的正方形</div>
</div>
.square-shape{overflow: hidden;width: 50%;background-color: black;
}
.content{margin-top: 100%;
}

7、伪元素的padding-bottom,内嵌absolute元素

<div class="square-shape"><div class="content">这是一个可以自适应的正方形</div>
</div>
.square-shape {width: 50%;border: 1px solid #f00;
}
.square-shape:after {content: '';display: block;padding-bottom: 100%;
}
.content {position: absolute;width: 100%;height: 100%;
}

转载于:https://www.cnblogs.com/camille666/p/css_square.html

css实现自适应正方形相关推荐

  1. 面试题19:CSS实现自适应正方形

    面试官:请说一下如何实现自适应正方形 纯CSS实现自适应正方形的几种方式 在写页面布局时候正方形对我们来说应该很常见,比如商品列表展示,头像展示, 在微博上发布图片的展现等 方法一: 原理同paddi ...

  2. html如何用百分百制作正方形,纯CSS实现自适应正方形

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 首先,自适应正方形是指宽度和高度随着屏幕宽度(不管是移动端还是 PC 端)进行等比例变化的正方形,在处理移动端页面时,我 ...

  3. html div 正方形,纯 CSS 实现自适应正方形

    在处理移动端页面时,我们有时会需要将 banner 图做成与屏幕等宽的正方形以获得最佳的体验效果,如 Flipbord 的移动页面: 那么应该怎么使用纯 CSS 制作出能够自适应大小的正方形呢? 方案 ...

  4. html怎么做一个正方形,纯 CSS 实现自适应正方形

    在处理移动端页面时,我们有时会需要将 banner 图做成与屏幕等宽的正方形以获得最佳的体验效果,如 Flipbord 的移动页面: 那么应该怎么使用纯 CSS 制作出能够自适应大小的正方形呢? 方案 ...

  5. CSS 实现自适应正方形

    1.直接采用vw布局

  6. 纯CSS实现正方形、自适应正方形方法

    纯CSS实现自适应正方形的几种方式 在写页面布局时候正方形对我们来说应该很常见,比如商品列表展示,头像展示, 在微博上发布图片的展现等 正方形用固定的形式写很简单 直接长=宽写固定的值如下 <d ...

  7. CSS实现自适应浏览器宽度的正方形

    2019独角兽企业重金招聘Python工程师标准>>> CSS实现自适应浏览器宽度的正方形有以下三种方法: 1.方案一:CSS3 vw 单位 CSS3 中新增了一组相对于可视区域百分 ...

  8. CSS 实现自适应宽高的正圆

    CSS 实现自适应宽高的正圆 利用CSS伪元素增加父元素的高度,使其变成一个正方形 代码 <span class="circle-container"><span ...

  9. css 图片自适应_104道 CSS 面试题,助你查漏补缺(下)

    (给前端大全加星标,提升前端技能) 作者:CavsZhouyou https://github.com/CavsZhouyou/Front-End-Interview-Notebook/blob/ma ...

最新文章

  1. 女朋友让我给她讲讲什么是比特币,她想买两个。
  2. Orchard:处理1对多的关系
  3. 学长毕业日记 :本科毕业论文写成博士论文的神操作20170401
  4. javascript 传多个参数的正则表达式(用来获取某个参数值)
  5. html 响应式 同一行,一行CSS实现各种响应式元素 – Fluidity
  6. .NET Core实战项目之CMS 第十五章 各层联动工作实现增删改查业务
  7. JavaFX即将推出您附近的Android或iOS设备吗?
  8. python 空格字符的表示_python字符串怎么去空格
  9. C++算法学习(力扣:1122. 数组的相对排序)
  10. 第二十九篇、UICollectionView瀑布流
  11. Java JDK 自带监控工具 jps.exe、jconsole.exe、jvisualvm.exe
  12. tuple操作、dict、其他常用操作
  13. 联想万全服务器系列,联想服务器万全系列慧眼高级版操作快速入门
  14. 开源微信共享记账小程序
  15. android自定义壁纸制作,如何为Android制作自己的自定义壁纸 | MOS86
  16. 如何仿微信聊天软件搭建
  17. Ant 编译 JRE version less than 1.8 is not supported.
  18. 主域名跳转到带www的域名方法,以及对seo有什么影响?
  19. ubuntu 安装多版本cuda,及切换版本方法及常见问题记录
  20. ReviewBoard安装配置

热门文章

  1. 数据结构vl怎么求_数据结构
  2. SQLi LABS Less 10 时间盲注
  3. mysql5.6找不到int_为什么在mysql 5.6中,在int字段上自动递增跳过“2147483646”?
  4. 升级 python 2.6.6 到 2.7.14 版本(pip工具安装)
  5. springboot thymeleaf模板使用
  6. 支持magento扩展性的几个特性
  7. 2016全球十大主流ERP厂商“新鲜出炉”!
  8. 《CCNA无线640-722认证考试指南》——5.4节其他无线拓扑
  9. 为您的IIS6下的网站配置Rewrite伪静态组件
  10. centos5.5安装ispcp