自适应

关于响应式布局和自适应布局

◇◆丶佛笑我妖孽 提交于 2020-01-13 08:52:58
现在随着移动设备的增多,各种不同分配率大小的设备也见怪不怪了,怎样在移动端布局不会崩塌 自适应布局 为不同的设备提供不同的网页,比如专门写一个mobile / iPhone / iPad版本。虽然解决了适配,但是比较麻烦,同时要维护好几个版本,而且如果一个网站有多个入口,会大大增加架构设计的复杂度。自适应还暴露出一个问题,如果屏幕太小,即使网页能够根据屏幕大小进行适配,但是会感觉在小屏幕上查看,内容过于拥挤 响应式布局 在自适应布局基础上做了系列优化,解决了屏幕小内容拥挤的问题,响应式网页的概念是一套适应代码为不同的设备提供不同的网页,换句话说就是一个网站能够兼容多个终端,而不是为了每一个终端做一个特定的版本。就算维护也只是针对那一套代码 关于自适应布局和响应式布局的区别 通过各方面的资料查询,总结了几点区别 ①.自适应布局是多各网页对应对个设备,响应式布局是一套网页对应多个设备 ②.自适应对页面做的屏幕适配是在一定范围:比如pc端一般要大于1024像素,手机端要小于768像素。而响应式布局全部适应 ③.自适应布局如果屏幕太小会发生内容过于拥挤。而响应式布局正是为了解决这个问题而衍生出的概念,它可以自动识别屏幕宽度并做出相应调整的网页设计 关于适配的写法 自适应布局和响应式布局两者都是通过检测视口分辨率来展示对应设计的网页,所以 <head></head> 标签内必须加上

vue中移动端自适应方案

落爺英雄遲暮 提交于 2020-01-12 20:48:50
安装 lib-flexible 1、npm i lib-flexible 2、在项目入口文件 main.js 里 引入 lib-flexible import ‘lib-flexible’ 3、添加meta标签 <meta name="viewport" content="width=device-width, initial-scale=1.0"> px 转 rem:安装px2rem-loader 1、npm i px2rem-loade 2、配置build/utils.js var cssLoader = {   loader: 'css-loader',   options: {     minimize: process.env.NODE_ENV === 'production',     sourceMap: options.sourceMap   } } var px2remLoader = {   loader: 'px2rem-loader',   options: {     remUnit: 75   } } function generateLoaders(loader, loaderOptions) {   var loaders = [cssLoader, px2remLoader] } 来源: https://www.cnblogs.com

unity 发布WebGL,自适应代码

会有一股神秘感。 提交于 2020-01-11 07:52:48
<!DOCTYPE html> <html lang="en-us"> <head> <meta charset="utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Unity WebGL Player | WebGlUnity</title> <script src="Build/UnityLoader.js"></script> <script> var gameInstance = UnityLoader.instantiate("unityContainer", "Build/WebGl.json"); </script> <script type="text/javascript"> function Reset() { var canvas = document.getElementById("#canvas"); canvas.height= document.documentElement.clientHeight; canvas.width = document.documentElement.clientWidth; console.log(canvas.width ); } </script> </head> <body onload=

js 照片自适应 铺满 展示

不问归期 提交于 2020-01-11 06:41:06
照片在div中自适应展示 描述:当照片在一个固定的宽高展示时,照片宽高不一,为了美化铺满div 解决方案:我们通过得到照片的宽高W、H 问题分析: 宽>高 :此时我们让高度顶满盒子,宽度自适应 宽<高: 此时我们让宽度顶满,高度自适应 在img上面嵌套父元素 来使img在盒子里面上下左右居中,且隐藏超出的部分 父元素必须要有确定的宽高,否则会引发img不能继承到父元素的宽高 < div class = " img_parent " > < img /> </ div > < style > .img_parent { display : flex ; justify-content : center ; align-items : center ; overflow : hidden ; width : 90px ; height : 90px ; } </ style > 使用img标签的onload方法 <img :src="‘data:image/jpeg;base64,’+item.path" @load=“imgOnload” alt=""> imgOnload ( e ) { const tag = e . target ; if ( tag . width / tag . height <= 1 ) { e . srcElement . style . height

》》HTML5 移动页面自适应手机屏幕四类方法

允我心安 提交于 2020-01-11 06:10:31
1、使用meta标签:viewport H5移动端页面自适应普遍使用的方法,理论上讲使用这个标签是可以适应所有尺寸的屏幕的,但是各设备对该标签的解释方式及支持程度不同造成了不能兼容所有浏览器或系统。 viewport 是用户网页的可视区域。翻译为中文可以叫做"视区"。 手机浏览器是把页面放在一个虚拟的 "窗口"(viewport)中,通常这个虚拟的"窗口"(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户可以通过平移和缩放来看网页的不同部分。 viewport标签极其属性: 每个属性的详细介绍: 属性名 取值 描述 width 正整数或 device-width 定义视口的宽度,单位为像素 height 正整数或 device-height 定义视口的高度,单位为像素,一般不用 initial-scale [0.0-10.0] 定义初始缩放值 minimum-scale [0.0-10.0] 定义缩小最小比例,它必须小于或等于 maximum-scale设置 maximum-scale [0.0-10.0] 定义放大最大比例,它必须大于或等于 minimum-scale设置 user-scalable yes/no 定义是否允许用户手动缩放页面,默认值 yes 2、使用css3单位rem

HTML5移动端实现自适应

隐身守侯 提交于 2020-01-10 11:41:00
1. 添加meta标签:viewport <meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/> 2. 将下面代码添加到需要的页面中: 1 (function flexible (window, document) { 2 var docEl = document.documentElement 3 var dpr = window.devicePixelRatio || 1 4 5 // adjust body font size 6 function setBodyFontSize () { 7 if (document.body) { 8 document.body.style.fontSize = (12 * dpr) + 'px' 9 } 10 else { 11 document.addEventListener('DOMContentLoaded', setBodyFontSize) 12 } 13 } 14 setBodyFontSize(); 15 16 // set 1rem = viewWidth / 10 17 function setRemUnit () {

CSS实现背景图片屏幕自适应,最直接的方法!!

北城以北 提交于 2020-01-10 10:58:59
直接上代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>Document</title> <style> * { padding: 0; margin: 0; } .bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("./big_bg.png") no-repeat; background-size: cover; } </style> </head> <body> <div class="bg"></div> </body> </html> 来源: CSDN 作者: big tail 链接: https://blog.csdn.net/qq_37698249/article/details/103897287

前端页面自适应

て烟熏妆下的殇ゞ 提交于 2020-01-08 12:26:56
前端页面自适应 <meta name= "viewport" content= "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"> 页面的头部加上这句话. <meta name= "viewport" content= "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"> 页面的头部加上这句话. 来源: https://www.cnblogs.com/xdlzs/p/12165773.html

左右固定,中间自适应布局

帅比萌擦擦* 提交于 2020-01-08 09:12:50
1.使用自身浮动法: 自身浮动法的原理就是对左右分别使用float:left和float:right,float使左右两个元素脱离文档流,中间元素正常在正常文档流中。对中间文档流使用margin指定左右外边距进行定位。 该布局法的不足是三个元素的顺序,middle一定要放在最后,middle占据文档流位置,所以一定要放在最后,左右两个元素位置没有关系。当浏览器窗口很小的时候,右边元素会被挤到下一行 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 </head> 7 <body> 8 <style> 9 .containter{ 10 width:100%; 11 height:200px; 12 } 13 14 .left{ 15 width:300px; 16 height:100%; 17 float: left; 18 background: blue; 19 } 20 21 .center{ 22 height:100%; 23 margin-left: 300px; 24 margin-right: 300px; 25 background: red; 26 } 27 .right{ 28 height:100%; 29

vue 中使用 echarts 自适应问题

浪子不回头ぞ 提交于 2020-01-08 07:21:14
echarts 自带的自适应方法 resize() 具体用法: let xxEcharts = this.$echarts.init(document.getElementById('xxx')) xxEcharts.setOption(xxxx) // 参数是 echarts 的option对象 window.onresize = xxEcharts.resize 但是,问题来了,同一个页面使用多个echarts 的时候,window.onresize = xxEcharts.resize 只对最后一个echarts有效果 这时候换种写法 window.onresize = function(){   xxBarChart.resize()   xxxBarChart.resize()   xxChart.resize()   xxxChart.resize() } 好了,现在所有的 echarts都可以自适应了, 然而,还没完,还是会出现各种问题,导致自适应出问题,现在我们想想,如何手动触发 resize 首先,肯定要把 echarts变量全局化。 我现在 vue的data中设置 xxEcharts : this.$echarts.init(document.getElementById('xxx')) 然而报错,没办法, 再试试在计算函数中声明 computed:{