当前位置: 首页 > news >正文

CSS制作响应式正方形及其应用

CSS制作响应式正方形?什么鬼?干嘛用的?干嘛用的没人有每人的需求,本人也正好是由于公司正在做的业务须要,想做个照片展示的功能(当然得符合响应式了)。而这个照片展示必须符合下面几点功能:1。用三张图片占满屏幕的一行;2,长宽比固定(临时做成正方形)。3,保证图片不扭曲。

业务什么的这里临时不谈,回到正题:利用CSS制作响应式正方形。

响应式正方形,大部分第一想法肯定是设置宽度百分比。然后利用JS动态设置高度。性能什么的这里就不谈了。反正我是认为比較麻烦,正如本人一直坚持的原则:CSS能实现的功能,为何要去麻烦JS?

废话不多说,先上个代码:

<div class='container'>
    <div class='content'>content</div>
</div>

接下来是CSS部分:

.container{
            width:100%;
            position:relative;
            display: inline-block;
        }
        .container:after{
            content:'';
            display: block;
            margin-top: 100%;
        }
        .content{
            position:absolute;
            left:0;
            right:0;
            top:0;
            bottom: 0;
<pre name="code" class="css">            background-color: silver;
}
 
  有兴趣的童鞋能够去试试,这段代码的功能就是如上所说的响应式的正方形了。
  

假设须要制作等比的长方形也是简单,把100%改成50,就变成了2:1的长方形了。

本来想把前文说过的业务实现代码贴出来的,可是认为与题目不正确应,就不罗嗦了,后期有时间直接做个DEMO出来供大家參考。结尾就就简单的说明一下这段代码的关键好了。这段代码一个非常重要的特性在于margin-top:100%这段,官方说明:margin的百分比取值是依据父层元素的宽度来定的。所以margin:100%。正好能够制作一个正方形出来,再将子元素的四个角放到父元素中,子元素就成了一个正方形了。



            background-color: silver;

相关文章:

  • css中attribute selector及pseudo class
  • “考虑不全面”导致的大问题!!!
  • [Linux]于Mac在配置Linuxserver安装Nginx+PHP
  • Multimodal —— 看图说话(Image Caption)任务的论文笔记(二)引入attention机制
  • NFS服务配置固定端口
  • 别再用 MongoDB 了!
  • 第十章:异常处理
  • export Jar from eclipse (总结)
  • grep命令
  • MVC TIP8:为控制器增加有参构造函数(为了注入等其它用途)
  • 自己做的一种计算器算法的设计..不知道代码是否有bug
  • bat无故报错打印混乱的解决
  • 51CTO博客意见建议反馈处【2017版】
  • Linux计划任务
  • JavaScript 调用 Windows 的打印 代码
  • 网络传输文件的问题
  • [deviceone开发]-do_Webview的基本示例
  • AHK 中 = 和 == 等比较运算符的用法
  • Angularjs之国际化
  • CEF与代理
  • Centos6.8 使用rpm安装mysql5.7
  • CSS盒模型深入
  • Github访问慢解决办法
  • Golang-长连接-状态推送
  • JavaScript 奇技淫巧
  • JavaScript学习总结——原型
  • NSTimer学习笔记
  • SAP云平台里Global Account和Sub Account的关系
  • vue-router的history模式发布配置
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 诡异!React stopPropagation失灵
  • 小试R空间处理新库sf
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • $refs 、$nextTic、动态组件、name的使用
  • (13):Silverlight 2 数据与通信之WebRequest
  • (HAL库版)freeRTOS移植STMF103
  • (pojstep1.1.2)2654(直叙式模拟)
  • (第27天)Oracle 数据泵转换分区表
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (汇总)os模块以及shutil模块对文件的操作
  • (没学懂,待填坑)【动态规划】数位动态规划
  • .gitignore文件—git忽略文件
  • .mysql secret在哪_MySQL如何使用索引
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .net 按比例显示图片的缩略图
  • .net 程序发生了一个不可捕获的异常
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • .NET使用存储过程实现对数据库的增删改查
  • ??eclipse的安装配置问题!??
  • [BJDCTF 2020]easy_md5
  • [BZOJ 3531][Sdoi2014]旅行(树链剖分+线段树)
  • [C#]获取指定文件夹下的所有文件名(递归)
  • [Contest20180313]灵大会议