代码之家  ›  专栏  ›  技术社区  ›  xmxmxmx

如果鼠标在div的下半部分,css会动态更改悬停时的可点击区域以调整大小。

css
  •  0
  • xmxmxmx  · 技术社区  · 7 年前

    我有一个div设置为absolute,它在悬停时通过更改为position:static来展开,以显示里面的全文。

    我想知道,如果用户不在原来的范围内,而不是新的放大框内,是否可以使这个缩小。

    .box {
      position:relative;
      overflow:hidden;
    }
    
    .box:hover {
      position:static;
    }
    

    这是可行的,但有点烦人,因为它填充了一块屏幕,用户必须将鼠标移到div外才能缩小,我希望他们将鼠标移到div的原始大小之外,而不是将溢出的div缩小。

    在显示扩展的div时,有什么技巧可以将可点击区域保持在原始边界上吗?

    1 回复  |  直到 7 年前
        1
  •  3
  •   Nandita Sharma    7 年前

    我添加了这个样式( background-color: rgba(0,0,0,0.2); )为了显示原始容器,应该将其更改为 background-color: transparent; 对于实际代码。

    body {
      margin: 0;
    }
    
    .box2 {
      position: relative;
      overflow: hidden;
      width: 100px;
      height: 100px;
      transition: all 2s;
      background-color: red;
      top: 0;
    }
    
    .box {
      position: absolute;
      overflow: hidden;
      width: 100px;
      height: 100px;
      top: 0;
      left: 0;
      transition: all 2s;
      background-color: rgba(0,0,0,0.2);
      z-index: 2;
    }
    
    .box:hover+.box2 {
      position: static;
      width: 200px;
      height: 200px;
    }
    <div class="">
      <div class="box">
      </div>
      <div class="box2">
      </div>
    </div>