【问题标题】:Can I use a math expression in the css property clip-path: polygon?我可以在 css 属性 clip-path: 多边形中使用数学表达式吗?
【发布时间】:2021-12-29 15:43:01
【问题描述】:

我有一个看起来像这个例子的页面:

https://codepen.io/zxcid/pen/MWvLPqQ

* {
  padding: 0;
  margin: 0;
}
body {
  height: 100vh;
  background-color: red;
}
.clip {
  height: 100vh;
  width: 100%;
  background-color: white;
  clip-path: polygon(100% 0%,100% 85%,96% 100%,0% 100%,0% 0%);
}
.shadow {
  filter: drop-shadow(3px 1px 5px rgba(50, 50, 0, 0.5));
}
<div class="shadow">
  <div class="clip"></div>
</div>

由于使用此代码,我不能拥有具有不同 vw 或 vh 的相同形状(我总是想要相同长度的两侧),我想用如下表达式剪辑该部分:

clip-path: polygon(100% 0%,100% (vh - 100px),(vw - 100px) 100%,0% 100%,0% 0%);

如何在 CSS 中编写这个表达式?

【问题讨论】:

    标签: css expression clip-path


    【解决方案1】:

    使用calc()

    body {
      height: 100vh;
      background-color: red;
      margin:0;
    }
    .clip {
      height: 100vh;
      width: 100%;
      background-color: white;
      clip-path: polygon(0 0,100% 0,100% calc(100% - 100px),calc(100% - 100px) 100%,0 100%);
    }
    .shadow {
      filter: drop-shadow(3px 1px 5px rgba(50, 50, 0, 0.5));
    }
    <div class="shadow">
      <div class="clip"></div>
    </div>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-12-13
      • 1970-01-01
      • 2011-02-14
      • 2020-01-03
      • 1970-01-01
      • 2021-03-13
      • 1970-01-01
      相关资源
      最近更新 更多