覆盖与切出矩形面具

hir*_*iro 5 css overlay css3

场景:我想用矩形掩模覆盖一个元素(例如,背景#000,不透明度为0.8).接下来,在我想要突出显示的覆盖区域中有一个区域.

以下是截图示例:

用矩形切割面罩覆盖

(正如你所注意到的那样,从暗色面具上切下了一个矩形.在Photoshop中,它很容易 - 只需在上面放一层并切出矩形).

我怎么能让它在CSS中工作?

旁注:这种技巧似乎用于"教育用户关于新功能".

web*_*iki 7

您可以使用边框或框阴影.并在伪元素上使用它们以最小化标记.

框阴影示例:

div{
  height:100%;
  position:relative;
}
.overlay{
  display:inline-block;
  position:relative;
  z-index: 1;
}
.overlay:after{
  content:'';
  position:absolute;
  top:0; left:0;
  width:100%; height:100%;
  box-shadow: 0px 0px 0px 999px rgba(0,0,0,.8);
}
Run Code Online (Sandbox Code Playgroud)
<div>
  <p>Some content</p>
  <p class="overlay">Other content</p>
  <p>More content</p>
</div>
Run Code Online (Sandbox Code Playgroud)