vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > Vant自定义组件适配iphone底部安全区

Vant如何自定义组件适配iphone底部安全区

作者:超喜欢你呦

这篇文章主要介绍了Vant如何自定义组件适配iphone底部安全区问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

场景

问题

聊天界面输入框在iphone下被底部指示条遮盖

如下图:

解决方案

参考 Vant 内置组件适配方案

Vant文档:https://vant-contrib.gitee.io/vant/#/zh-CN/advanced-usage

Vant 内置组件中添加了 safe-area-inset-bottom 属性,即是在css中添加对应样式

iOS11 的新增特性,Webkit 的 CSS 函数,用于设定安全区域与边界的距离

它有四个预定义的变量:

第一步:在 index.htmlhead 标签中加入以下 meta

<meta
  name="viewport"
  content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover"
/>

第二步:在项目 index.css 中添加下列样式:

/**
 * 适配 iphone 底部安全区(指示条,配合index.html <meta name="viewport" ... />使用
 */
@supports (bottom: env(safe-area-inset-bottom)){
    #app {
        padding-bottom: constant(safe-area-inset-bottom);
        padding-bottom: env(safe-area-inset-bottom);
    }
}

@supports 是CSS3新引入的规则之一

主要用于检测当前浏览器是否支持某个CSS属性并加载具体样式

大功告成~

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文