HTML页面中如何实现div和图片高宽自适应效果
Admin 2022-07-12 群英技术资讯 1435 次浏览
该方法主要用来做网站自适应的,同时可以实现撑起内容高度,避免图片加载后导致的页面滚动。
一、可以使用js判断图片的宽度得到具体数值之后,再来利用js设置图片的高度(这里就不具体为大家细说了)。
利用js来实现有一个缺点就是只能在页面刷新的时候才能调整图片的高度,不能随着浏览器的窗口大小变化来实现自适应。
二、我这次主要是用css来实现图片高度的自适应问题。
下面是所需要的代码
(这种方法是可以在图片上方垂直居中展示文字的,如果不需要可以选择最下方更简洁的代码)
<div class="box"> <span>行内元素垂直居中</span> <div class="img-box"> <img src="123.jpg"/> </div> </div>
.box{ width: 50%; margin: 50px auto; } .img-box{ width: 100%; position:relative; z-index:1; } .img-box img{ position:absolute; top:0; bottom:0; left:0; right:0; width:100%; margin:auto; z-index: -1; *zoom:1; } .img-box:before { content: ""; display: inline-block; padding-bottom: 100%; width: 0.1px; /*必须要有数值,否则无法把高度撑起来*/ vertical-align: middle; }
1、这里主要为大家说明的就是padding-bottom这个属性,当它的值为百分比的时候,是按该元素的宽度来计算的。所以当设为100%的时候,其高度就等于自身的宽度,形成一个正方形。当然,这个数值可以根据实际情再进行调整。
2、其次要说明的就是我们引用的图片是通过绝对定位来布局的,这样才能使图片跟随其父元素的大小改变来实现自适应。
另一种简洁的方法就是直接在img的父元素上加padding-bottom就行了
<div class="img-box"> <img src="123.jpg"/> </div>
.img-box{ padding-bottom:100%; } .img-box img{ position:absolute; top:0; bottom:0; left:0; right:0; width:100%; margin:auto; }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
CSS的calc函数用法是什么,如何应用实现布局?下文有详细的介绍,小编觉得挺实用的,对大家学习或工作或许有帮助,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
如何仅使用一个 DIV 配合 CSS 实现饼状图?下面本篇文章就来给大家看看实现方法,希望对大家有所帮助。
这篇文章主要介绍了基于html5 canvas做批改作业的小插件的相关资料,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要介绍了纯CSS实现“文本溢出截断省略”的几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
这篇文章主要介绍了CSS3 mask 遮罩的具体使用方法,详细的介绍了CSS3 mask 遮罩的具体使用,具有一定的参考价值,有兴趣的可以了解一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008