小程序中的canvas不跟随scrollView滚动

文章讨论了原生组件canvas在WebView渲染中的限制,如最高层级、无法被覆盖、特定组件内不可用以及CSS样式限制。提供的解决方法包括检查并修改canvas父元素的属性设置,以及使用旧版canvas选项force-use-old-canvas。
摘要由CSDN通过智能技术生成

问题原因,官方文件说明:canvas为原生组件故有一下的性质:

  由于原生组件脱离在 WebView 渲染流程外,因此在使用时有以下限制:
    组件的层级是最高的,所以页面中的其他组件无论设置 z-index 为多少,都无法盖在原生组件上。
    后插入的原生组件可以覆盖之前的原生组件。
    原生组件还无法在 scroll-view、swiper、picker-view、movable-view 中使用。
    部分CSS样式无法应用于原生组件,例如:
    无法对原生组件设置 CSS 动画
    无法定义原生组件为 position: fixed
    不能在父级节点使用 overflow:hidden 来裁剪原生组件的显示区域


原文链接:https://blog.csdn.net/qq_25740691/article/details/81867382

解决方法1:看看是不是给最外层标签page定义了height:100%的属性或者overflow相关的属性,如果是的话去掉。检查你的canvas的所有父级元素是否设置了height:100%,overflow相关的属性(visible除外),以及position相关的属性(relative,static除外),如果是的话都去掉。
 

方法2:使用旧的cavas即设置force-use-old-canvas="true"即可。


  <view class="ec-container">
    <ec-canvas id="mychart-dom-bar" canvas-id="mychart-bar" ec="{{ ec }}"
     force-use-old-canvas="true"></ec-canvas>
  </view>

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值