Home  >  Q&A  >  body text

Curl bottom edge of div inwards using CSS

I want to bend the bottom edge of this rectangular div/background using CSS, so the result is like this:

Does anyone know how to implement it?


.curved {
  margin: 0 auto;
  height: 400px;
  background: lightblue;
  border-radius:0 0 200px 200px;
}
<div class="container">
  <div class="curved"></div>
</div>


P粉384366923P粉384366923332 days ago778

reply all(2)I'll reply

  • P粉211600174

    P粉2116001742023-10-24 15:57:52

    check. I created this using :after pseudo-element. It helps if the background is a solid color.

    .curved {
      margin: 0 auto;
      width: 300px;
      height: 300px;
      background: lightblue;
      position: relative;
    }
    .curved:after{
      background: white;
      position: absolute;
      content: "";
      left:0;
      right:0;
      bottom: -25px;
      height: 50px;
      border-radius: 50% 50% 0 0;
    }

    reply
    0
  • P粉980815259

    P粉9808152592023-10-24 00:00:31

    Just use border-radius and rely on some overflow. You can also consider pseudo-elements to avoid extra markup:

    .container {
      margin: 0 auto;
      width: 500px;
      height: 200px;
      background: lightblue;
      position: relative;
      overflow: hidden;
    }
    
    .container:after {
      content: "";
      position: absolute;
      height: 80px;
      left: -10%;
      right: -10%;
      border-radius: 50%;
      bottom: -25px;
      background: #fff;
    }

    reply
    0
  • Cancelreply