Задать вопрос
  • Как правильно сверстать такую границу у блока?

    @kelvin57
    Вот вариант, ещё и анимацию можно добавить)))
    Demo: https://jsfiddle.net/L3f2g5ty/



    Код

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body>
        <div class="cards">
          <div class="card">
            <h1>Далеко-далеко за словесными горами.</h1>
            <span
              >Далеко-далеко за словесными горами в стране гласных и согласных живут
              рыбные тексты.</span
            >
          </div>
        </div>
    
        <style>
          body {
            color: #fff;
            background: #00010e;
            display: flex;
            justify-content: center;
          }
          * {
            margin: 0;
            padding: 0;
          }
    
          .cards {
            overflow: hidden;
            display: flex;
            flex-direction: column;
            min-height: 100vh;
            justify-content: center;
          }
    
          .card {
            display: flex;
            flex-direction: column;
            gap: 50px;
            padding: 70px;
            border: 2px solid rgb(65, 66, 50);
            position: relative;
          }
          .card h1,
          .card span {
            z-index: 1;
          }
          .card::after,
          .card::before {
            display: block;
            content: "";
            width: 45%;
            aspect-ratio: 1/1;
            border-radius: 20% 100% 20%;
            transform: rotate(-20deg);
            position: absolute;
            background: #00010e;
            box-shadow: 0 15px 50px 30px #00010e;
            animation: 10s rotate infinite alternate;
          }
          @keyframes rotate {
            from {
              transform: rotate(-20deg);
            }
            to {
              transform: rotate(360deg);
            }
          }
    
          .card::after {
            right: 0;
            top: -65%;
            right: -10%;
          }
          .card::before {
            width: 30%;
            bottom: -50%;
            left: 20%;
          }
        </style>
      </body>
    </html>

    Ответ написан
    Комментировать