如何在Ionic 4中禁用/移除ion-button的ion-ripple效果?

10
4个回答

33

--ripple-color CSS变量可以用来关闭涟漪效果。

 <ion-button class="no-ripple">
   <ion-icon slot="icon-only" name="trash"></ion-icon>
 </ion-button>
例如,我们可以在按钮上设置--ripple-color: transparent来有效地禁用该效果。
.no-ripple {
  --ripple-color: transparent;
}

请参考https://github.com/ionic-team/ionic/issues/19648


它并没有关闭涟漪效果,只是使其透明。例如,边距仍然存在。 - Boat
是的,没错。以前没有官方的关闭方式。那时这是推荐的解决方案类型。请查看链接的 Github 问题。 - Sebin Benjamin

4

只需将模式设置为iOS

<ion-button mode='ios'>

1

我认为它仅包含在Android中,因此您可以在按钮上设置 mode="ios"以避免该效果。

是的,所以我刚刚checked查看了源代码,它只与 mode="md"(即Android / Material Design)一起使用:

    <TagType
      {...attrs}
      class="button-native"
      disabled={disabled}
      onFocus={this.onFocus}
      onBlur={this.onBlur}
    >
      <span class="button-inner">
        <slot name="icon-only"></slot>
        <slot name="start"></slot>
        <slot></slot>
        <slot name="end"></slot>
      </span>
      {mode === 'md' && <ion-ripple-effect type={this.rippleType}></ion-ripple-effect>}
    </TagType>

那是唯一使用按钮本身的方法,rippleType 只提供 boundedunbounded,没有禁用它的方法。
我不确定是否可以使用css隐藏ion-ripple-effect,因为Ionic 4中使用了Web组件封装。

Web组件的封装使其变得困难。然而,mode="ios"可以解决问题。谢谢:D - Sebin Benjamin
很酷,请考虑将其标记为答案,如果您对此感到满意,这样其他人就不会浪费时间访问和阅读已解决的问题。 - rtpHarry

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接