Creating wavy borders

I need to create a wavy border on a div. I have found a way to do so with CSS but only on th left/right or top/bottom using this CSS: CSS Generator for Wavy Shapes & Patterns

I need the border all the way around. I’ve created a work around by making one group with left right borders and another group with top/bottom border on top of one another and offset the width/height but the corners don’t match up exactly.

Does anyone have a plugin for wavy/decorative borders or another way to do this?

Did you try combining the output from the website for top&bottom with left&right…seems to do with the repeat-y and x

Screen Shot 2024-08-25 at 6.04.47 PM
Screen Shot 2024-08-25 at 6.04.40 PM

I tried combining them but not sure how to combine them I guess. The ways I tried didn’t work.

I got it to work from this page: A fancy frame with wavy borders

A group with no background (color is set in the CSS below):
image

I didn’t check the details too much but your group should be 300px to work. I am sure playing with numbers would help a bit.
And here is the editor: Tests for Forum 14 | Bubble Editor

With this HTML:

<style>
    #wavy {
  --s: 50px;  /* control the size of the wave */
  --w: 250px; /* preferred image width */
  --c:#CD8C52;
  
  width: round(var(--w),2*var(--s)); 
  aspect-ratio: 1;
  object-fit: cover;
  padding: var(--s);
  border-radius: calc(1.5*var(--s));
  --R:calc(var(--s)/sqrt(2)) at;
  --g:radial-gradient(var(--R) 50%,var(--c) calc(100% - 1px),#0000) 
     0 0/calc(2*var(--s)) calc(2*var(--s));
  --_c:#0000 100%,var(--c) calc(100% + 1px);
  --_b:calc(2*var(--s)) calc(51% - var(--s)/2) repeat-x;
  background: var(--g),
    radial-gradient(var(--R) 50% calc(100% + var(--s)/2),var(--_c)) 
     var(--s) calc(100% - var(--s)/2)/var(--_b),
    radial-gradient(var(--R) 50% calc(      var(--s)/-2),var(--_c)) 
     var(--s) calc(       var(--s)/2)/var(--_b);
  --_m:var(--s)/calc(51% - var(--s)/2) calc(2*var(--s)) repeat-y;
  mask: var(--g),
    radial-gradient(var(--R) calc(100% + var(--s)/2) 50%,var(--_c))
     calc(100% - var(--s)/2) var(--_m),
    radial-gradient(var(--R) calc(      var(--s)/-2) 50%,var(--_c)) 
     calc(       var(--s)/2) var(--_m);
}
</style>

Thanks! I stumbled on this yesterday as well. It’s a little clunky but I think it will work!