reactjs 如何添加一个剪辑路径的形象顺风

8mmmxcuj  于 2023-04-11  发布在  React
关注(0)|答案(2)|浏览(92)

我期待做一个剪辑路径做我的网站上的分隔符。我想剪辑出我的固体白色背景,并允许在下面的部分图像到它上去。
我看过css示例,但我使用的是Tailwinds和Next.jS
我似乎找不到任何帮助。
通常在CSS中,你可以这样做。

header {
  clip-path: polygon(
    0 0,
    100% 0,
    100% 100%,
    0 calc(100% - 6vw)
  );
}

但是使用顺风和React,我不知道如何做到这一点。
我就是想得到这样的效果。
This is what Im trying to achieve with React/NExt.js and tailwind

brtdzjyr

brtdzjyr1#

在React中,转到index.css文件,其中存在**@tailwind指令,并在 utilities directive 下创建自己自定义实用程序类**,如下所示-

@layer utilities {

   .clip-your-needful-style {

       clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 6vw));

   }

}

然后你可以在className="clip-your-needful-style“中调用你的custome类到你的JSX中
希望它能在你的情况下起作用...🧐

w46czmvw

w46czmvw2#

这是我的idea关于在Tailwind CSS中实现clip-path,它涵盖了你想要的向下倾斜设计的部分。
要将元素倾斜3度(大约),您可以应用CSS,如:clip-path: polygon(0 0, 100% 2.25rem, 100% 100%, 0 calc(100% - 2.25rem))
在Tailwind世界中,让我们使用工具类来代替:

<section class="bg-gray-300 h-72 clip polygon b-3 d-3">
  <div class="container"></div>
</section>

然后在全局Tailwind CSS文件中使用clip-path实用程序(本例中为多边形形状)及其值(例如,尺寸a-3,b-3,c-3,d-3如下所示)

@layer utilities {
  * {   --tw-clip-polygon: var(--tw-clip-polygon-a), var(--tw-clip-polygon-b), var(--tw-clip-polygon-c), var(--tw-clip-polygon-d);
  --tw-clip-polygon-a: 0 0;
  --tw-clip-polygon-b: 100% 0;
  --tw-clip-polygon-c: 100% 100%;
  --tw-clip-polygon-d: 0 100%;
  }

  .clip.polygon.a-3 {
    --tw-clip-polygon-a: 0 2.25rem;
  }

  .clip.polygon.b-3 {
    --tw-clip-polygon-b: 100% 2.25rem;
  }

  .clip.polygon.c-3 {
    --tw-clip-polygon-c: 100% calc(100% - 2.25rem);
  }

  .clip.polygon.d-3 {
    --tw-clip-polygon-d: 0 calc(100% - 2.25rem);
  }

  .clip.polygon {
    clip-path: polygon(var(--tw-clip-polygon));
  }
}

已经有plugin用于精确尺寸,您可以使用它。
不过,如果有人能用其他形状(如椭圆和圆形)重新思考我的想法,沿着最常用用例的尺寸,那就太棒了。

相关问题