background-image和<img/>的区别

本文探讨了CSS背景图background-image与HTML img标签的区别:前者不占位且加载较晚,后者占位并随结构一同加载。此外,还讨论了二者在可操作性上的差异。
是否占位:

background-image是背景图片,是css的一个样式,不占位;

 <img />是一个块状元素,它是一个图片,是html的一个标签,占位。


是否可操作

background-image是只能看的,只能设置background-position, background-attachment,  background-repeat;

<img />是一个document对象,它是可以操作的。比如更换img src的路径可以达到更换图片的目的,也可以移动它的位置,从document中移除等等操作。所以如果是装饰性的图片就使用background-img,如果和文体内容很相关就使用img。


加载顺序不同

在网页加载的过程中,以css背景图存在的图片background-image会等到结构加载完成(网页的内容全部显示以后)才开始加载,而html

中的标签img是网页结构(内容)的一部分会在加载结构的过程中加载,换句话讲,网页会先加载标签img的内容,再加载背景图片

background-image,如果你用引入了一个很大的图片,那么在这个图片下载完成之前,img后的内容都不会显示。而如果用css来引入同样的图

片,网页结构和内容加载完成之后,才开始加载背景图片,不会影响你浏览网页内容。
<!-- 对接宁夏电力 --> <!DOCTYPE html> <html> <head> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="private, max-age=3"> <meta http-equiv="expires" content="0"> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="chrome=1"> <link rel="stylesheet" href="js/elementui.css"> <script type="text/javascript" src="js/jquery-3.4.1.min.js"></script> <script type="text/javascript" src="js/jquery.easyui.min.js"></script> <link rel="stylesheet" type="text/css" href="js/easyui.css"> <link rel="stylesheet" type="text/css" href="js/icon.css"> <script type="text/javascript" src="js/notification.js"></script> <script type="text/javascript" src="js/vue.min.js"></script> <script type="text/javascript" src="js/main0.js"></script> <script type="text/javascript" src="js/jswebrtc.js"></script> <script src="js/elementui.js"></script> <title></title> <style type="text/css"> </style> </head> <body> <div id='ydjk_sssp' style='width:100%;height:98vh'> <div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> </div> <iframe id="videoEmbed" width="100%" height="98%" frameborder="0"></iframe> </div> <script type="text/javascript"> $(function () { var vm = new Vue({ el: '#ydjk_sssp', data: { ps:"",//车牌号 color:"",//车辆颜色 }, created() { var my = this window.addEventListener('storage', this.handleStorageChange); my.ps = localStorage.getItem("plateNo"); my.color = plateColor = localStorage.getItem("plateColor"); console.log(my.ps) console.log(my.color) }, beforeDestroy() { window.removeEventListener('storage', this.handleStorageChange); }, methods: { handleStorageChange(event) { if (event.key === 'refreshBPage') { this.refresh(); } }, refresh() { // 执行刷新操作,例如重新获取数据 var my = this my.ps = localStorage.getItem("plateNo"); my.color = plateColor = localStorage.getItem("plateColor"); if(my.ps && my.color){ var videoUrl = 'https://ascs.jjicar.com/sp/sssp?licensePlate='+my.ps+'&licensePlateColor='+my.color document.getElementById("videoEmbed").src = videoUrl; } } } }) }) /* */ // 3. 动态设置 <embed> 的 src /* */ </script> </body> </html> 将上面<div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> <div > <div style='position: absolute; background: url(/ydjk/img/1.png) bottom/contain, url(/ydjk/img/2.png) 50%/auto 30%; background-repeat: no-repeat; background-color: #060f20; width: 50%; height: 50%; z-index: 99'></div> </div> </div>界面优化一下,图片占满屏,上下各两个
最新发布
11-28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值