Fading out siblings on hover in CSS

原文连接:
https://www.trysmudford.com/blog/fade-out-siblings-css-trick/

要实现下面这样的效果:
在这里插入图片描述

通常,会把hover事件加在card1,card2,card3上,但是通过加在父元素上也可以实现。

初始代码如下:

 <style>
    .parent {
      display: flex;
      height: 20vh;
      justify-content: space-around;
      align-items: center;
      background-color: #a6c0fe;
    }
    .parent button {
      background-color: #fff;
      width: 20vw;
      height: 20vw;
      border: none;
    }
</style>

<article class="parent">
  <button>Card 1</button>
  <button>Card 2</button>
  <button>Card 3</button>
</article>

然后加上hover的代码如下:

    .parent:hover > button {
      opacity: 0.5;
    }

    .parent:hover > button:hover {
      transform: scale(1.1);
      opacity: 1;
    }
    

这样的话,基本效果都出来了,可以看到如下的效果,
在这里插入图片描述
这样没啥大问题,但是有点儿不理想:鼠标放到两个card中间的时候也会触发,希望去掉,

   .parent {
      pointer-events: none;
    }

    .parent > button {
      pointer-events: auto;
    }

pointer-events: none; 告诉浏览器,鼠标悬浮在parent的时候,忽略鼠标事件,但是只有这样还不行,因为里面的button也hover不生效了。所以对里面的button再加上pointer-events: auto;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值