【问题标题】:How to add the same border-radius to element and box-shadows of element如何将相同的边框半径添加到元素和元素的框阴影
【发布时间】:2017-06-29 15:11:21
【问题描述】:

我有一个元素,我在其上添加了两个框阴影,我希望元素的角和框阴影具有相同的边框半径。不知何故,它没有发生。 元素的边框半径与第一个 box-shadow 不同,第一个 box-shadow 的边框半径与第二个 box-shadow 的边框半径不同。

代码如下:

.stack_item{
  overflow: hidden;
  border-radius: 10px 10px 10px 10px;
  -moz-border-radius: 10px 10px 10px 10px;
  -webkit-border-radius: 10px 10px 10px 10px;
  transform: translate(-50%, 9%);
  -webkit-box-shadow: 0px -15px 0px -7px rgb(206, 204, 204), 0px -29px 0px -13px rgb(168, 168, 168);
  -moz-box-shadow: 0px -15px 0px -7px rgb(206, 204, 204), 0px -29px 0px -13px rgb(168, 168, 168);
  box-shadow: 0px -15px 0px -7px rgb(206, 204, 204), 0px -29px 0px -13px rgb(168, 168, 168);
}

【问题讨论】:

    标签: css


    【解决方案1】:

    由于您正在缩小阴影,因此边框半径也在缩小。

    设置在更大的伪元素上就可以了

    .stack_item{
      width: 200px;
      height: 100px;
      position: relative;
      border: solid 1px black;
      border-radius: 10px 10px 10px 10px;
      margin-top: 50px;
      background-color: white;
    }
    
    .stack_item:before,
    .stack_item:after {
        content: "";
        position: absolute;
        top: 0px;
        bottom: 50px;
        border-radius: inherit;
    }
    
    .stack_item:before {
        left: 7px;
        right: 7px;
        box-shadow: 0px -8px 0px 0px rgb(206, 204, 204);
        z-index: -1;
    }
    .stack_item:after {
        left: 13px;
        right: 13px;
        box-shadow:  0px -16px 0px 0px rgb(168, 168, 168);
        z-index: -2;
    }
    <div class="stack_item"></div>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-04
      • 2011-07-04
      • 1970-01-01
      • 1970-01-01
      • 2013-12-27
      • 2012-12-07
      • 1970-01-01
      相关资源
      最近更新 更多