自适应

移动Web开发图片自适应两种常见情况解决方案

懵懂的女人 提交于 2019-12-08 01:19:31
本文主要说的是Web中图片根据手机屏幕大小自适应居中显示,图片自适应两种常见情况解决方案。开始吧 在做配合手机客户端的Web wap页面时,发现文章对图片显示的需求有两种特别重要的情况,一是对于图集,这种文章只需要左右滑动浏览,最好的体验是让图片缩放显示在屏幕有效范围内,防止图片太大导致用户需要滑动手指移动图片来查看这种费力气的事情,用户体验大大降低。二是图文混排的文章,图片最大宽度不超过屏幕宽度,高度可以auto。这两种情况在项目中很常见。另外,有人说做个图片切割工具,把图片尺寸比例都设定为统一的大小,但即使这样,面对各种大小的移动设备屏幕,也是无法适用一个统一方案就能解决得了的。而且如果需求太多,那服务器上得存多少份不同尺寸的图片呢?显示不太符合实际。 下面是图集类型,需求方要求图片高宽都保持在手机可视视野范围,js代码列在下面: <script type="text/javascript"> $(function(){ var imglist =document.getElementsByTagName("img"); //安卓4.0+等高版本不支持window.screen.width,安卓2.3.3系统支持 /* var _width = window.screen.width; var _height = window.screen.height - 20; var

BootStrap如何让图片自适应不同屏幕宽度,并居中显示。

我只是一个虾纸丫 提交于 2019-12-08 01:13:53
我们在浏览网站的时候发现,很多网站的banner图片都是全屏宽度。这种图片都是在不同分辨率下都是显示图片的中间部分,这里我们介绍两种方式, 第一种就是常见的方式,用定位 我简单定义为三部曲: - 让包裹图片的盒子绝对定位, - left:50%, - Margin-left:图片宽度的一半 看例子吧: <!DOCTYPE html> <html lang="en"> <head> <title>Title</title> <style> *{ margin: 0 auto; } .bannerbox { position:relative; overflow:hidden; height:410px; } .banner { width:2000px; /*图片宽度*/ position:absolute; left:50%; margin-left:-1000px; /*图片宽度的一半*/ } </style> </head> <body> <div class="bannerbox"> <div class="banner"> <img src="img/slide_04_2000x410.jpg"> </div> </div> </body> </html> 第二种方式,让图片做背景图,利用背景图的background-position:center

div的Img图片自适应容器的大小

末鹿安然 提交于 2019-12-08 01:11:26
废话不多说,让imd图片自适应大小,网上东拼西凑得到了两套方案,且都能实行 方案一:只要设置了父容器的大小,那么img就会自适应大小 < img src = "../../libs/images/login.jpg" style = " width: 100%; height: auto; " /> 方案二:写了一个登录页面,所以登录页面的图片要是背景才对,一下代码完美解决问题。 < body style = "margin:0px 0px 0px 0px;background-attachment: fixed;background-size:100% 100%;background-image: url('../../libs/images/login.jpg');width: 100%;height: 100%;" > 来源: CSDN 作者: java_xxxx 链接: https://blog.csdn.net/java_xxxx/article/details/81364015

背景图自适应屏幕居中显示,且不变形

邮差的信 提交于 2019-12-08 01:11:02
html: <div class='item'> <div class = 'container' /> </div> css: .item { width: 100% ; height: 100% ; .container { max -width: 100% ; height: auto; min -height: 600px; // 这里可监听屏幕变化,改变最小高度 position: absolute; left: 50% ; top: 50% ; transform: translate( -50%, -50%); // 利用位移实现居中 background-image: url(./img/1 .png); background -size: 100% ; background -repeat: no- repeat; background -position: center 0 ;      } } 转载于:https://www.cnblogs.com/aloehui/p/10238299.html 来源: CSDN 作者: weixin_34049032 链接: https://blog.csdn.net/weixin_34049032/article/details/93737553

css让图片自适应容器(div)大小

ぃ、小莉子 提交于 2019-12-08 01:10:45
我们在写页面的时候经常会遇到需要图片 自适应 容器大小这样的情况,下面我就开门见山的说明一下怎样去实现这样一个效果。 < div > < img src = "1.jpg" alt = "" > </ div > 1 2 3 备注一下这里的图片大小为200x200px div { width : 400 px ; height : 400 px ; border : 1 px solid #000 ; } img { width : 100 % ; height : 100 % ; } 1 2 3 4 5 6 7 8 9 不管容器有多大,只要将img的宽高设置成 100% (这里的100%是相对于父级宽高而言)就能自适应容器大小。 那是不是就这这么简单完事儿了呢?如果你不介意图片被放大后可能出现 失真 的话也的确是这样就ok了。 假如你介意 图片放大后会失真 ,我们可以改进上面的代码,只需要将img的样式简单修改 img { max-width : 100 % ; max-height : 100 % ; } 1 2 3 4 max-width:100%和width:100%的区别在于,max-width是相对于img自身的尺寸而言的。意思是图片最大宽度为自身尺寸的宽,在这里就是100px。而width的100%我们上面已经说过了是相对于父级宽度的

Echarts图标自适应问题(已解决)

偶尔善良 提交于 2019-12-08 00:19:27
<! DOCTYPE html > < html > < head > < meta charset ="utf-8" > < title > ECharts </ title > <!-- 引入 echarts.js --> < script src ="js/echarts.common.min.js" ></ script > </ head > < body > <!-- 为ECharts准备一个具备大小(宽高)的Dom --> < div id ="main" style ="width: 600px;height:400px;" ></ div > < script type ="text/javascript" > var worldMapContainer = document.getElementById( ' main ' ); // 用于使chart自适应高度和宽度,通过窗体高宽计算容器高宽 var resizeWorldMapContainer = function () { worldMapContainer.style.width = window.innerWidth + ' px ' ; worldMapContainer.style.height = window.innerHeight + ' px ' ; }; // 设置容器高宽

SVG多分辨率、自适应缩放解决方案

白昼怎懂夜的黑 提交于 2019-12-07 23:51:48
SVG格式本身就是矢量图形格式,可以随意缩放。但是如果如果整个画面都是通过SVG进行搭建,同一个SVG图形嵌入在HTML中,要同时满足多个分辨率屏幕的查看,还是需要进行一些额外的设置,包括JS动态设置width、height等。 用户在设计SVG图形的初期,先要确定该SVG图形的大致画面比例和查看方向,比如:该画面是在手机上查看还是Pad上查看还是pc上;还有,允许该画面只是上下滑动查看(对于高度远大于宽度的情况),还是画面只是左右滑动查看等。 确定了以上的信息,要设计一个可以在多分辨率屏幕下自适应的SVG画面,有以下几个步骤 1.在SVG根标签中添加 preserveAspectRatio="xMinYMin meet" 属性 该属性指定SVG图形在屏幕的最左上角开始显示,并且保持等比缩放。 2.在SVG跟标签中添加 viewBox 属性 该属性来设置SVG画布的大小,但该大小是一个相对的大小,并不是绝对尺寸大小。比如设定一个viewBox="0,0,800,3000",可以认为将画布大小的宽分为800份,高分为3000份,然后所有SVG的元素都在800*3000所分割成的画布上摆放。这时候不用考虑屏幕实际高宽。再次提醒注意:viewBox将画布分为800*3000份的小格子,然后所有的元素在该画布上摆放。至于该格子的绝对大小,则根据我们后面所设定的width

干货!web页面完美解决自适应的问题

和自甴很熟 提交于 2019-12-07 23:45:53
版权声明:本文为章鱼哥原创文章,若要转载,请注明出处 https://blog.csdn.net/qq_40388552/article/details/84838474   前段时间做了一个大数据前端页面显示的项目,使用了如下的简单的方式来解决页面自适应的问题,码友们如果有更好的方法欢迎留言。 采用的方案核心的3个步骤 采用 bootstrap的的网格系统 来进行页面布局划分。要实现自己想要的页面效果就需要结合百分比和div嵌套来实现,这都是基础哈。 整个页面的宽度width和高度height都采用 百分比 的形式来设计,从一开始的html标签开始到body里面的内容层层递进都设置上百分比。 注意: 当你发现对某个元素设置的百分比没有起作用时,这是因为百分比的大小是相对其父级元素宽高的大小,如最外层元素设置的百分比是对应屏幕而言的。 字体如何去做自适应我采用的是使用 Css3的@media 查询 ,通过@media可以针对不同的屏幕尺寸设置不同的样式,我们这里对字体的样式进行修改,于是我在style标签中写了类似如下的一串代码,来改变body的字体大小,你也可以把它写成css文件然后引入到网页中。 @media screen and (max-width: 1920px) { body { font-size: 16px;} } @media screen and (max

H5移动端自适应屏幕

送分小仙女□ 提交于 2019-12-07 23:39:37
<meta id="viewport" name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=no;"> 名称解释 width:控制 viewport 的大小,可以指定的一个值,如果 600,或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。 height:和 width 相对应,指定高度。 initial-scale:初始缩放比例,也即是当页面第一次 load 的时候缩放比例。 maximum-scale:允许用户缩放到的最大比例。 minimum-scale:允许用户缩放到的最小比例。 user-scalable:用户是否可以手动缩放 注:详见 http://www.cnblogs.com/2050/p/3877280.html 来源: CSDN 作者: 第三眼的思绪 链接: https://blog.csdn.net/A123638/article/details/82587021

移动端H5自适应js

▼魔方 西西 提交于 2019-12-07 23:35:10
第一种方法: 在原生app打开链接的时候,适配不兼容,页面宽度为750px,不是全屏显示。 <!DOCTYPE html> <html lang="en"> <head> <meta charset=utf-8> <meta content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0" name="viewport"> <title>Title</title> <style> .app{ font-size:30px; width: 540px; border: 1px solid #ccc; display: block; margin: 0 auto;} </style> <script> //在原生app打开链接的时候,适配不兼容,页面宽度为750px,不是全屏显示。 // class ! function(navigator) { var userAgent = navigator.userAgent; documentElement = document.documentElement; if(userAgent.match(/micromessenger\/5/gi)) { documentElement.className += " mobile wx_mobile wx