当前位置: 首页 > Web前端 > HTML5

深入剖析H5

时间:2023-04-04 23:55:47 HTML5

首先科普一下,HTML5不是一种技术,而是一种标准。所以其实我们要么是作为理论派在讨论HTML5标准,要么是作为实践派在讨论HTML5标准在某浏览器中的应用。H5其实是一个解决方案,一个好看的移动端单页网站的解决方案移动端适配解决方案rem适配优点:1.引用简单,布局方便2.根据设备屏幕的DPR,自动设置最合适3.有效解决了移动端真正的1px问题,但并不是每个地方都必须使用rem,rem只适用于固定尺寸!这里rem也是一个单位,可以为我们的布局提供无线变化。根据开发者的设置,它会在不同分辨率的屏幕上显示不同的颜色。这个单位的定义和em类似,不同的是em是相对于父元素的,rem是相对于根元素的,当我们指定一个元素的font-size为2rem时,也就是比如说,这个元素的字体大小是根元素的字体大小的两倍,如果html的font-size是12px,那么这个2rem元素的font-size就是24px。html{字体大小:12px;}h1{字体大小:2rem;}2*12=24pxhtml{字体大小:16px;}h1{字体大小:2rem;}2*16=32px单位定义特征remfont根元素的大小根据根元素的字体大小。元素的字体大小基于父元素的字体大小。当然,以上只是我们介绍rem的一个简单例子。我需要为特定应用程序计算rem。根据根元素font-size由Javascript计算。我们的rem单元适配选择一个设备宽度作为基准,设置它的根元素大小,其他设备根据这个比例计算自己的根元素大小。比如让iPhone6根元素font-size=16px。device设备宽度根元素font-size/pxwidth/remiiPhone5320计算-iPhone63751623.4375iPhone73751623.4375iPhone7plus414计算-根元素fontSize公式:width/fontSize=deviceWidth/deviceFontSize下面是动态计算(functionflexible(window,document){vardocEl=document.documentElementvardpr=window.devicePixelRatio||1//调整主体字体大小函数setBodyFontSize(){if(document.body){document.body.style.fontSize=(12*dpr)+'px'}else{document.addEventListener('DOMContentLoaded',setBodyFontSize)}}setBodyFontSize();//设置1rem=viewWidth/10functionsetRemUnit(){varrem=docEl.clientWidth/10console.log(rem)docEl.style.fontSize=rem+'px'}setRemUnit()//在页面调整大小时重置rem单位window.addEventListener('resize',setRemUnit)window.addEventListener('pageshow',function(e){if(e.persisted){setRemUnit()}})//检测0.5px是否支持if(dpr>=2){varfakeBody=document.createElement('body')vartestElement=document.createElement('div')testElement.style.border='.5px纯色透明'fakeBody.appendChild(testElement)docEl.appendChild(fakeBody)if(testElement.offsetHeight===1){docEl.classList.add('hairlines')}docEl.removeChild(fakeBody)}}(window,document))上面的代码是我经常使用的rem计算方式,大家可以根据自己的需要来设置它是使用屏幕尺寸和rem的转换倍率等百分比方案大多是可行的。它会让布局随着屏幕的大小自动缩放,不需要写太多的css样式和js相关的计算操作,但是文本有很大的问题。由于文字是固定大小的,当屏幕dpr发生变化时,文字的CSS像素不会发生变化,从而导致文字在页面上所占空间发生变化。结果就是文字太多或者屏幕dpr太小的时候会溢出;但如果以小屏幕为基准,字体就会偏小。当前移动端适配排版时,将使用百分比作为版块级元素的兼容排版。这也与设计稿中的效果有关。如果设计稿要求一个元素有固定的宽度,那么就用px来保证宽度即可。vw方案vw也是css的单位,1vw相当于1%,例如:浏览器视口大小为370px,则1vw=370px*1%=6.5px(浏览器会向下取整为7),我们取查看vw浏览器和手机之间的兼容性问题。浏览器和手机在移动端支持iOS8以上和Android4.4以上,在微信x5内核中也完全支持。VW本身将整个可见视口水平划分为100个部分。每个单位为1vw。这个单元最大的优势就是在移动端的时候,无论是竖屏还是横屏,vw始终对准水平方向。比屏幕尺寸变化时的rem解决方案好(顺便说一句,后面会兼容使用屏幕尺寸可调的移动设备时[手动斜眼]),页面不会崩溃。对于移动设备,比如iphone6+的375pxCSS像素宽度,1vw等于3.75px。本单元可以解决上述依赖脚本绑定根元素font-size的问题。竖屏和横屏都比较好$w-base:375px$w-base-design:750px@functionpx2vw($px)@return($px/$w-base-design)*100vw虽然vw可以很好的支持,它不会获取原始模型的像素值。在后期的维护中,会遇到很多很多很多的麻烦。前期打怪爽,后期维护装备就难了。连续点击的触发有200ms~300ms的延时。touchstart:手指触摸屏幕会触发touchmove:手指在屏幕上移动时会触发touchend:手指离开屏幕时会触发touchcancel:可以由系统触发,比如手指触摸时屏幕,如果突然有alert,或者系统有其他中断触摸的行为,可以触发这个事件,这是因为浏览器的内核不一样,我们的屏幕尺寸和屏幕厂家也不一样,经常出现缺像素或多像素的现象。其实手机都是一样的,不同的屏幕尺寸,浏览器也是多种多样的,以iphone6为例,它的dpr(devicepixelratio)设备像素比为2,css中的一个1x1的点在iphone6上实际上是一个2x2的点,而1px的边框会显示为devicePixelRatio=22px的Retina屏幕,在iPhone6Plus下甚至会显示为3px。这个问题有很多解决方案。我个人认为最简单的解决方案是DaMoDa的。使用postcss-write-svg插件通过元标签控制视口2.删除默认的苹果工具栏和菜单栏3.状态栏(屏幕顶部的栏)下的颜色webappapplication(iphonesafariprivatemetataginthedevice)默认值为default(white),and可以设置black(黑色)和black-translucent(灰色半透明)如果值为“black-translucent”,会占据页面的px位置,悬浮在页面上方4.允许全屏模式浏览(safariiphone设备中的privatemeta标签)5.禁止将号码转换为拨号链接在iPhone上,电话号码默认会改Hyperlink(蓝色字体),点击这个号码会自动拨号6.iosclickclick事件延迟300ms7.移动端如何定义字体font-family8。移动端的字体单位font-size选择px或者rem(new)9。Mobiletouchevent(区分webkit和winphone)(new)更多问题ResponsivewebAppandResponsive:设计使用CSS3MQ(Mediaqueries),让网页自动适配不同的设备,从而有更好的性能表现效果.而且响应式设计不仅仅用在手机网站上,在PC端也可以适配不同的屏幕,而且手机端和PC端只需一套代码即可。这就是全平台的响应式设计Webapp:HTML5移动端(移动网站、混合应用、WebAPP)经常使用响应式设计(流式布局、CSS3媒体查询)来解决屏幕适配,但响应式设计不是必须的,流式布局和remnant也可以用来解决手机屏幕适配问题meta标签META标签是HTML网页源代码中一个重要的html标签。META标签用于描述一个HTML网页文档的属性,如作者、日期时间、网页描述、关键词、页面刷新等。META标签是HEAD区的关键标签HTML标记。它位于HTML文档的和中。(有些不在<head>和<title>之间)。虽然它提供的信息对用户来说是不可见的,但却是文档最基本的元信息。<meta>除了提供文档字符集、使用的语言、作者等基本信息外,还涉及关键词和网页层级的设置。移动端页面适配方案参考——rem布局进阶版移动端网页适配方案你对vh和vw单位了解多少?</p> </div> </div> <div class="zuowen_sxy"> <div class="prev">上一篇:<a title="纪念木马英雄Sinon——SAPUI5MockServer的步骤和工作原理介绍" href="/webqianduan/245588.html">纪念木马英雄Sinon——SAPUI5MockServer的步骤和工作原理介绍</a> </div> <div class="prev">下一篇:<a title="h5机器人对话交互设计方案(干货)" href="/webqianduan/245590.html">h5机器人对话交互设计方案(干货)</a> </div> </div> <div class="related_about"> <div class="related_about_t"><code>深入剖析H5相关文章</code></div> <ul> <li><a href="/kejifunen/364214.html" target="_blank" title="【深入】AR盒子不会重蹈VR盒子的覆辙">【深入】AR盒子不会重蹈VR盒子的覆辙</a></li> <li><a href="/kejifunen/364055.html" target="_blank" title="深入调查!智能手环融合背后的真相是什么? ">深入调查!智能手环融合背后的真相是什么? </a></li> <li><a href="/kejifunen/363774.html" target="_blank" title="智慧校园的概念逐渐深入人心,智能门锁的批量出口是在校园吗? ">智慧校园的概念逐渐深入人心,智能门锁的批量出口是在校园吗? </a></li> <li><a href="/kejifunen/363290.html" target="_blank" title="【深入】资本比硬件更重要,虚拟现实会成为下一个资本泡沫吗? ">【深入】资本比硬件更重要,虚拟现实会成为下一个资本泡沫吗? </a></li> <li><a href="/kejifunen/362642.html" target="_blank" title="【深入】全球VR产业版图!国内初创企业在竞争中还缺乏什么? ">【深入】全球VR产业版图!国内初创企业在竞争中还缺乏什么? </a></li> <li><a href="/kejifunen/362598.html" target="_blank" title="智能家居市场风起云涌,行业视角剖析行业痛点">智能家居市场风起云涌,行业视角剖析行业痛点</a></li> <li><a href="/kejifunen/362513.html" target="_blank" title="Oculus Rift VR 头盔的深入评测,扶我起来,我又">Oculus Rift VR 头盔的深入评测,扶我起来,我又</a></li> <li><a href="/kejifunen/362481.html" target="_blank" title="屏幕制造商和销售商的集体努力! 8K电视将越来越深入人心">屏幕制造商和销售商的集体努力! 8K电视将越来越深入人心</a></li> <li><a href="/kejifunen/362392.html" target="_blank" title="可穿戴线上展第一天!剖析行业痛点,直击黑科技新产品">可穿戴线上展第一天!剖析行业痛点,直击黑科技新产品</a></li> <li><a href="/kejifunen/362282.html" target="_blank" title="微软进军可穿戴市场,剖析智能手环特点">微软进军可穿戴市场,剖析智能手环特点</a></li> <li><a href="/kejifunen/362253.html" target="_blank" title="家庭馅饼-客厅第1部分,设计客厅时首先应该考虑什么? ">家庭馅饼-客厅第1部分,设计客厅时首先应该考虑什么? </a></li> <li><a href="/kejifunen/362113.html" target="_blank" title="【深入】Oculus“试用”平台能否找到VR的G点? ">【深入】Oculus“试用”平台能否找到VR的G点? </a></li> <li><a href="/kejifunen/361997.html" target="_blank" title="智慧生活理念深入人心,智能家居的基本设备有哪些? ">智慧生活理念深入人心,智能家居的基本设备有哪些? </a></li> <li><a href="/kejifunen/361751.html" target="_blank" title="聚焦智能化两大核心领域剖析行业形势">聚焦智能化两大核心领域剖析行业形势</a></li> <li><a href="/kejifunen/361436.html" target="_blank" title="【深入】消费市场谷歌为何放弃AR转投VR? ">【深入】消费市场谷歌为何放弃AR转投VR? </a></li> <li><a href="/kejifunen/361193.html" target="_blank" title="【深入】三大VR头戴设备哪家最好?在虚拟现实的道路上,">【深入】三大VR头戴设备哪家最好?在虚拟现实的道路上,</a></li> <li><a href="/kejifunen/361055.html" target="_blank" title="想购买运动手环或手表吗?首先了解一下这九个问题和九个答案! ">想购买运动手环或手表吗?首先了解一下这九个问题和九个答案! </a></li> <li><a href="/kejifunen/360893.html" target="_blank" title="【透视】剖析华为Watch为何在海外如此受欢迎? ">【透视】剖析华为Watch为何在海外如此受欢迎? </a></li> <li><a href="/kejifunen/360644.html" target="_blank" title="成长的烦恼,思考无界限!新华社记者深入对话雷军">成长的烦恼,思考无界限!新华社记者深入对话雷军</a></li> <li><a href="/kejifunen/360496.html" target="_blank" title="【深入】VR正在走向社交虚拟现实,但仍面临三大挑战">【深入】VR正在走向社交虚拟现实,但仍面临三大挑战</a></li> </ul> </div> </div> <div class="main-right"> <div class="right_fix"> <div class="r_con"> <div class="r_title">最新推荐</div> <ul> <li><em>1</em><a href="/kejifunen/370266.html" title="全面剖析可穿戴设备打开市场的十大“军规”" target="_blank">全面剖析可穿戴设备打开市场的十大“军规”</a></li> <li><em>2</em><a href="/kejifunen/370230.html" title="【深入】2016年VR行业发展及大事" target="_blank">【深入】2016年VR行业发展及大事</a></li> <li><em>3</em><a href="/kejifunen/370029.html" title="深度剖析可穿戴设备健康医疗行业" target="_blank">深度剖析可穿戴设备健康医疗行业</a></li> <li><em>4</em><a href="/kejifunen/370026.html" title="【深入】当虚拟现实遇上电影,VR会杀死传统电影吗? " target="_blank">【深入】当虚拟现实遇上电影,VR会杀死传统电影吗? </a></li> <li><em>5</em><a href="/kejifunen/369742.html" title="深度剖析可穿戴健康医疗行业" target="_blank">深度剖析可穿戴健康医疗行业</a></li> <li><em>6</em><a href="/kejifunen/369716.html" title="艾维I5plus智能手环深度评测直接剖析优缺点" target="_blank">艾维I5plus智能手环深度评测直接剖析优缺点</a></li> <li><em>7</em><a href="/kejifunen/369640.html" title="【深入】想成为 VR 开发者之前先问自己六个问题" target="_blank">【深入】想成为 VR 开发者之前先问自己六个问题</a></li> <li><em>8</em><a href="/kejifunen/369609.html" title="要实现智能监控,首先要做好大数据存储" target="_blank">要实现智能监控,首先要做好大数据存储</a></li> <li><em>9</em><a href="/kejifunen/369588.html" title="对全球可穿戴技术使用情况的深入调查" target="_blank">对全球可穿戴技术使用情况的深入调查</a></li> <li><em>10</em><a href="/kejifunen/369338.html" title="清华大学魏少军!剖析AI芯片两大技术痛点,3年后必将出现佼佼" target="_blank">清华大学魏少军!剖析AI芯片两大技术痛点,3年后必将出现佼佼</a></li> </ul> </div> <div class="r_con"> <div class="r_title">猜你喜欢</div> <ul class="you_like"> <li><em>1</em><a href="/kejifunen/368531.html" title="全球VR产业底层,深度剖析虚拟现实版图" target="_blank">全球VR产业底层,深度剖析虚拟现实版图</a></li> <li><em>2</em><a href="/kejifunen/368475.html" title="【深入】虚拟现实技术会给网吧带来新的春天吗? " target="_blank">【深入】虚拟现实技术会给网吧带来新的春天吗? </a></li> <li><em>3</em><a href="/kejifunen/368458.html" title="2018中国云原生用户大会:网易云深度剖析微服务框架" target="_blank">2018中国云原生用户大会:网易云深度剖析微服务框架</a></li> <li><em>4</em><a href="/kejifunen/368135.html" title="【深入】为什么80%的Apple Watch用户不安装应用?" target="_blank">【深入】为什么80%的Apple Watch用户不安装应用?</a></li> <li><em>5</em><a href="/kejifunen/367704.html" title="零售业正在发生巨大的变化,零售商首先要解决的问题是什么? " target="_blank">零售业正在发生巨大的变化,零售商首先要解决的问题是什么? </a></li> <li><em>6</em><a href="/kejifunen/367479.html" title="深入解析Apple Watch主板结构和内部传感器技术" target="_blank">深入解析Apple Watch主板结构和内部传感器技术</a></li> <li><em>7</em><a href="/kejifunen/367337.html" title="联发科LinkIt平台三大家族成员剖析" target="_blank">联发科LinkIt平台三大家族成员剖析</a></li> <li><em>8</em><a href="/kejifunen/367293.html" title="深入私人世界!智能手表也能面向成人吗? " target="_blank">深入私人世界!智能手表也能面向成人吗? </a></li> <li><em>9</em><a href="/kejifunen/367282.html" title="深入解析Apple Watch!涅槃、重生还是困兽之战" target="_blank">深入解析Apple Watch!涅槃、重生还是困兽之战</a></li> <li><em>10</em><a href="/kejifunen/367193.html" title="深度剖析眼球追踪技术及四大应用领域!人机交互的未来" target="_blank">深度剖析眼球追踪技术及四大应用领域!人机交互的未来</a></li> <li><em>11</em><a href="/kejifunen/366642.html" title="深入解读奋达科技布局可穿戴医疗产品的战略" target="_blank">深入解读奋达科技布局可穿戴医疗产品的战略</a></li> <li><em>12</em><a href="/kejifunen/366374.html" title="【深入】先穿还是先装备?人类在升华自己生活方式的路上不会停下" target="_blank">【深入】先穿还是先装备?人类在升华自己生活方式的路上不会停下</a></li> <li><em>13</em><a href="/kejifunen/366134.html" title="从手表端和手机端深度剖析智能手表产品及其需求" target="_blank">从手表端和手机端深度剖析智能手表产品及其需求</a></li> <li><em>14</em><a href="/kejifunen/365795.html" title="物联网开放生态联盟成立,首先瞄准智能家居场景" target="_blank">物联网开放生态联盟成立,首先瞄准智能家居场景</a></li> <li><em>15</em><a href="/kejifunen/365743.html" title="在融资2.1亿元“重建地球”之前,51VR首先要建设一个自动" target="_blank">在融资2.1亿元“重建地球”之前,51VR首先要建设一个自动</a></li> <li><em>16</em><a href="/kejifunen/365478.html" title="2015美国创业趋势科技!可穿戴设备首先要好看" target="_blank">2015美国创业趋势科技!可穿戴设备首先要好看</a></li> <li><em>17</em><a href="/kejifunen/364850.html" title="深入剖析国外移动医疗商业模式" target="_blank">深入剖析国外移动医疗商业模式</a></li> <li><em>18</em><a href="/kejifunen/364833.html" title="深度剖析“GT破产案”!被苹果逼上“死胡同”" target="_blank">深度剖析“GT破产案”!被苹果逼上“死胡同”</a></li> <li><em>19</em><a href="/kejifunen/364789.html" title="国内VR行业暗流涌动,剖析行业人才竞争现状" target="_blank">国内VR行业暗流涌动,剖析行业人才竞争现状</a></li> <li><em>20</em><a href="/kejifunen/364464.html" title="深度剖析Google Glass" target="_blank">深度剖析Google Glass</a></li> </ul> </div> </div> </div> </div> <div class="related_article"></div> <div class="footer"> <p>Copyright © 2012-2022 程序源 版权所有<a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">豫ICP备2022028201号</a></p> <p>重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。 如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。</p> </div> <!-- 应用插件标签 start --> <!-- 应用插件标签 end --> </body> </html>