css 我如何“剪辑”或隐藏从我的圈子溢出?

t98cgbkg  于 2023-06-07  发布在  其他
关注(0)|答案(1)|浏览(133)

在这里,我有一个部分,我试图实现一个圆形的边界下面。现在的大小很不错,但是右侧溢出(因为我的.top-level::after上的width: 230%)。我之所以这样设置宽度是因为我希望圆的半径是什么。
下面是我的CSS,Github链接在这里:https://github.com/satriapamudji/frontendmentor/tree/main/frontendmentor-03-workitlandingpage

.top-level {
  position: relative;
  min-width: 1440px;
  min-height: 730px;
  background-color: var(--off-white); /* set to transparent */
  z-index: 1;
  padding-bottom: 10%;
}

.top-level::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%; /* horizontally centers the element */
  margin-left: -115%; /* negative half of the width */
  width: 230%;
  height: 1000px;
  background: var(--purple);
  border-radius: 100%;
  z-index: 0;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  transform: translateY(-15%);
}

我试过:
1.使用overflow: hidden为整个部分设置容器。但是,如果我这样做,我的英雄形象得到剪辑和右侧仍然显示。

  1. overflow: hidden无处不在
nzk0hqpo

nzk0hqpo1#

为什么不使用溢出隐藏?检查片段之后,它似乎工作没有?

body {
  margin: 0;
  padding: 0;
}

.top-level {
  position: relative;
  width: 100vw;
  min-height: 730px;
  background-color: transparent;
  z-index: 1;
  padding-bottom: 10%;
  overflow: hidden;
}

.top-level::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  /* horizontally centers the element */
  margin-left: -115%;
  /* negative half of the width */
  width: 230%;
  height: 1000px;
  background: purple;
  border-radius: 100%;
  z-index: 0;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  transform: translateY(-15%);
}
<div class="top-level">
</div>

相关问题