flex 布局华为meta8 自带浏览器兼容

现在的手机有很多的需要垂直居中和水平居中,还要和能够很完美的配合适屏的需求,css3中出现了完美的盒模型box-flex和flex弹性布局,

网上能找到各种关于这两种布局的资料,用法也不难;

哈哈昨天上线突然发现华为note8 浏览器不兼容flex 布局,只需要一招变解决了问题,最好还是记录一下。

在这里插入图片描述

兼容问题

现在大多数的手机都是能够兼容flex布局的,而且我们主要用的也是flex更多一些,所以对于box布局并没有太多的使用与研究,但是最近在使用flex布局的时候却发现华为meta8自带的浏览器(版本比较低的啦)却对这个flex布局不支持,却对下面的这个属性支持,这样又可以使用啦啦啦啦。。。。。

.box{
    display: -webkit-box;
}

哈哈,更让人跌破眼镜的是,在兼容华为meta8自带浏览器的时候,因项目中使用的是stylus预处理器,在进行编译的时候却不能编译

.item{
    -webkit-box-flex:1;
}

最后的最后加了一个padding的属性才可以编译,虽然不知道为啥,但是编译成功了,而且值得注意的是:这个padding的属性必须放紧挨着才可以编译,虽然觉得有点不可思议。。。。。

.item{
    -webkit-box-flex:1;
    padding 0
}

上线成功!!!!!!!!

在鸿蒙系统中,华为方舟框架(ArkUI) 提供了一套名为“圣杯布局”(BottleLayout) 的设计模式,它是一种响应式布局方案,用于创建适应多种屏幕尺寸和设备类型的用户界面。这种布局方式的特点是采用弹性盒子模型(EBM),即 Flexbox,它允许元素自适应容器大小的变化,使得内容可以水平居中并且按比例分配空间。 实现圣杯布局一般需要以下几个步骤: 1. 设置容器:首先,将父容器设置为 Flexbox 容器,并指定 `display` 属性为 `flex` 或者 `inline-flex`。 ```xml <view class="container" display="flex"> <!-- 子视图 --> </view> ``` 2. 分配空间:在容器内部,通常分为三部分:左侧、中间和右侧。分别给它们设置 flex 项目属性(如 `flex`, `flex-grow`, 和 `flex-basis`)。 ```xml <view class="left">...</view> <view class="center" flex></view> <view class="right">...</view> ``` - `flex` 或 `flex: 1;` 表示自动分配剩余空间,默认值。 - 如果想让某部分占据固定宽度,可以设置 `flex-basis`。 3. 中间区域的特殊处理:为了让中间区域占满可用空间,同时保证左右两侧等分剩下的空间,可以在中间区域外包裹一层额外的容器,并设置其 `flex-grow: 1`。 ```xml <div class="middle-container"> <view class="middle" flex></view> </div> ``` 4. 样式调整:使用 CSS 样式进一步定制各个部分的样式,包括间距、边距等。 通过以上步骤,就可以实现一个响应式的圣杯布局,在不同分辨率的屏幕上都能保持良好的视觉效果。需要注意的是,具体实现会因为鸿蒙方舟框架的不同版本以及组件库的具体API有所变化,开发者应该参考官方文档进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值