背景
微信小程序中使用fixed固定定位封装自定义导航栏navbar,也算是比较常见的需求了,一般都是用position:fixed去做一个固定定位。
实现思路
.navbar{
position:fixed;
}
如果没设置top,bottom,left,right等属性,那么会相对于原先位置进行固定,在绝大部分机型都是可以实现,没有问题。
问题
机型:iphone13pro
系统版本:ios16
出现问题:导航栏被固定到屏幕中间
解决
加上top属性即可解决,代码实现如下
.navbar{
position:fixed;
top:0;
}
记录一次兼容性问题,不过这样的兼容性问题在开发过程中我们完全可以避免,这其实就是代码质量导致的,在写一些元素定位属性的时候,我们要把位置信息写上(top,bottom,left,right)固定元素位置,这样做可以提高代码可读性,也可以避免一些奇怪的bug