前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >http-server快速启动localhost与iPhone X兼容

http-server快速启动localhost与iPhone X兼容

作者头像
wade
发布2020-04-24 17:08:56
6500
发布2020-04-24 17:08:56
举报
文章被收录于专栏:coding个人笔记coding个人笔记

之前分享过用webpack快速搭建启动一个localhost访问静态资源,其实node还提供了一个更简单的插件http-server。

http-server是一个简单的零配置的命令行http服务器,非常简单而且非常强大。

安装:npm install http-server -g

使用:在某个目录下启动:http-server

比如我在我的G盘启动

那我我就可以直接访问G盘目录下的所有文档:

要注意的是,如果文件夹里面有index.html,那么就会默认访问这个文件,这应该很多人都知道。

-p修改端口访问:http-server -p 8085

-o自动打开服务器http-server -o

其他的可以自己试一下,我改使用地址和启动HTTPS都有问题,估计跟服务原理有点关系。

参考地址:https://www.npmjs.com/package/http-server

iPhone X刚出来的时候,还是造成了一些小轰动,对于前端来说,也就是底部这一块比较头疼。实现兼容的方法很多,有些还蛮复杂的。尤其是刚出来的时候,移动端定位在最底部的被iPhone X的主按键遮挡了。

最近需要兼容这个iPhone X,于是公司大佬提供了一个文档:

https://webkit.org/blog/7929/designing-websites-for-iphone-x/?hmsr=funteas.com&utm_medium=funteas.com&utm_source=funteas.com

本着学习的心态忍者看了一遍,原谅自己的英语水平,确实还是看不懂,最后只看懂了使用方法。幸好IOS不像安卓这么复杂和碎片化,IOS提供的标准能快速都在IOS里面实现。

添加meta标签:

代码语言:javascript
复制
<meta name='viewport' content='initial-scale=1, viewport-fit=cover'>
constant(safe-area-inset-bottom);
env(safe-area-inset-bottom);

简单理解就是,safe-area-inset-bottom是iPhone X底部按钮遮挡页面元素的时候会等于多出来的34px。

比如你一个fixed元素,bottom: 0,你想要兼容就直接:

代码语言:javascript
复制
bottom: constant(safe-area-inset-bottom);
bottom: env(safe-area-inset-bottom);

如果你需要计算:

代码语言:javascript
复制
bottom: calc(1.306667rem + constant(safe-area-inset-bottom));
bottom: calc(1.306667rem + env(safe-area-inset-bottom));

可以理解为,不是iPhone X constant(safe-area-inset-bottom)等于0,是的话就是34px。文档里面只有env,大佬说一些低版本可能需要用到constant。

其实现在还有一个是JS的兼容方法,可以添加不同的判断,不只是iPhone X,但是用起来稍显复杂,还有一个就是第一次刷新的时候是无效的,必须滚动一下,因为这个插件是监听滚动实现。

(完)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 coding个人笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档