我正在用Figma设计一个网站,它允许我创建一个均匀分布的边框,也就是对称的角落都是一样的,虚线现在相对于彼此是倾斜的或移位的.我想在我的网站上复制类似的行为,但我找不到一个可以与自适应UI一起工作的解决方案->我想要放置边框的div的宽度和高度是不固定的.

我曾try 使用SVG和虚线边框生成器站点,但都没有达到预期的行为.我本以为这是一项常见的任务,有一个开发得很好的解决方案,但我无法谷歌任何东西,也无法使用人工智能进行任何工作输出.我试着从Figma中导出它,但没有一个插件工作得很好,即使是静态大小的插件.

enter image description here

推荐答案

你可以try 一些背景和梯度.调整下面的大小以查看结果:

.box {
  --c: red; 
  --t: 5px; /* border thickness */
 
  width: 300px;
  height: 200px;
  
  
  border: var(--t) solid #0000;
  --b1:/calc(4*var(--t)) var(--t) linear-gradient(90deg,var(--c) 25%,#0000 0 75%,var(--c) 0) border-box round no-repeat;
  --b2:/var(--t) calc(4*var(--t)) linear-gradient(      var(--c) 25%,#0000 0 75%,var(--c) 0) border-box no-repeat round;
  background:
     0 0 var(--b1),0 100% var(--b1),
     0 0 var(--b2),100% 0 var(--b2);
     
  /* to debug */
  overflow: hidden;
  resize: both;
}
<div class="box"></div>

Css相关问答推荐

视频嵌入在Bootstrap 5轮播中没有响应扩展

以百分比形式输入的css宽度属性不会生效

InertiaJS - Vue - Laravel:Using CSS Files

Firefox未正确设置SVG的父div的宽度

css ::part 伪 Select 器 Chrome 兼容性?

Tailwind CSS 隐藏和可见

努力将 CSS 样式应用于 Elm 应用程序

Material UI Modal 因背景而变暗

是否可以对 CSS 网格中重复和可包装的列使用固定的最小和最大宽度?

圆形加载动画

固定元素在 Chrome 中消失

ID 在整个页面中必须是唯一的吗?

Chrome 呈现 colored颜色 的方式与 Safari 和 Firefox 不同

跨浏览器方法使子 div 适合其父级的宽度

从 css 添加标题属性

如何使用 JavaScript 获取元素的背景图片 URL?

如何知道哪个 HTML 元素导致了垂直滚动条

将 webkit 滚动条样式应用于指定元素

bootstrap 关闭响应菜单点击

带有一些 LESS 魔法的花式媒体查询