【发布时间】:2020-12-21 04:49:42
【问题描述】:
我一直在做一个网站,我正在尝试在 div 中使用 clip-path 属性来创建一个箭头形状,我打算让它成为一个直角三角形,我得到了这个现在的结果:
.aboutus {
width: 100%;
height: 50vh;
position: relative;
background: #589AB8;
clip-path: polygon(0% 100%, 40% 100%, 50% 50%, 60% 100%, 100% 100%, 100% 0%, 0% 0%);
}
<div id="aboutus" class="aboutus">
</div>
我想知道是否有一种方法可以获得 vh 和 vw (vh/vw) 之间的比例以保持任何视口的三角形边的比例,而不会在我更改视口时变形大小。
或者如果您对它保持形状有任何建议,我会欢迎它。
谢谢
【问题讨论】:
-
vh 和 vw 之间没有关系,因为视口是完全随机的,取决于监视器、设备和窗口大小。您将需要 javascript 来收集边界框大小。
-
你能澄清一下尺寸(宽度和高度)是如何设置的吗?你也考虑过 vmin 或 vmax 吗?你期望那个三角形的实际尺寸是多少? (剪辑路径可以采用 calc() 函数)。例如,无论容器大小如何,三角形都保持相同大小:
clip-path: polygon(0% 100%, calc(50% - 20px) 100%, 50% calc(100% - 20px ), calc(50% + 20px) 100%, 100% 100%, 100% 0%, 0% 0%);