【问题标题】:Remove Box Shadow from Left Side从左侧移除盒子阴影
【发布时间】:2018-04-01 06:52:56
【问题描述】:

我正在为一个 ant 设计项目创建自定义侧边切换,我正在努力保留盒子阴影的三个边(即顶部、右侧、左侧)(即 2px 2px 8px rgba(0, 0, 0 , 0.15)) 并从左侧完全移除 box-shadow/blur。我最近的尝试如下。有什么想法吗?

JSX:

<span onClick={this.toggleCollapse} className="ant-layout-sider-zero-width-trigger">
  {collapsed ? <Icon type="menu-unfold" /> : <Icon type="menu-fold" />}
</span>

少:

.ant-layout-sider-zero-width-trigger {
  background: #fff;
  color: #000000a6;
  box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.15), inset -2px 0px 0px #fff;

  &:hover {
    background: #fff;
  }
}

顺便说一句,我在 Stack 上看到过类似的问题,但经过大量实验后,没有一个对我有用。

【问题讨论】:

    标签: css antd box-shadow


    【解决方案1】:

    一个想法是使用另一个容器并依赖一些溢出:

    .container {
      display:inline-block;
      padding:5px 5px 5px 0;
      overflow:hidden;
    }
    
    .box {
      width:200px;
      height:50px;
      background: #fff;
      color: #000000a6;
      box-shadow: 
        2px 2px 8px rgba(0, 0, 0, 0.15), 
        inset -2px 0px 0px #fff;
    }
    <div class="container">
    <div class="box">
    </div>
    </div>

    【讨论】:

      【解决方案2】:

      您可以增加阴影的偏移量并减小其大小:

      html {
        background: white;
      }
      
      body {
        padding: 2em;
        margin: 2em;
        background: yellow;
        box-shadow: 4px 4px 8px -4px, inset -2px 0px 0px #fff;
      }

      【讨论】:

      • 但是你想要有完全相同的阴影......我认为这个想法是有一个整齐的阴影切割
      • @TemaniAfif 也许我误解了这个问题。阴影使用其容器的大小,如果偏移量为 2 像素,但喷涂 8 像素,则从偏移侧将看到 6 像素,不是吗? ,使其更小(偏移减去喷雾),并且不会溢出这 6 个像素。无需从额外的父容器中删除它;)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-12
      • 2014-07-03
      • 1970-01-01
      • 2017-05-30
      • 1970-01-01
      相关资源
      最近更新 更多