兼容iphone(ios)圆角(border-radius)不起作用的问题

一、出现场景:使用mosowe-swiper:适用于uni-app的轮播图插件,圆弧无效

ios手机会在transform的时候导致border-radius失效解决方法:在使用动画效果带transform的元素的上一级div元素的css加上下面语句:

transform: rotate(0deg);
-webkit-transform: rotate(0deg);

二、场景分析

ios中使用border-radius导致overflow:hidden出现失效问题,如下结构:

<div class="swiper-outbox">
    <div class="swiper-container">
        <div class="swiper-wrapper">
            <div class="swiper-slide" v-for="(item,index) in items" v-bind:key="index">
                <img v-bind:src="item.address" alt />
            </div>
        </div>
    </div>
</div>

三.解决过程

  1. 通常情况下把overflow: hidden; border-radius: 20px;设置在图片的父级,即.swiper-slide上即可解决问题.
  2. 但有些情况无法将属性设置在父级或设置在父级会出现结果不符合预期,如下:

当轮播图中,将属性设置在父级,每个图片都有border-radius,这样显得不美观.
该问题出现主要是因为ios中使用transform导致,可在期望设置overflow: hidden; border-radius: 20px;的元素上(当前例子即.swiper-outbox)设置transform: rotate(0deg)即可解决该问题.

border-radius: 20px;
// 兼容ios的圆角问题
transform: rotate(0deg);
-webkit-transform: rotate(0deg);
overflow: hidden;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值