Чем отличается overflow: hidden от visibility: hidden?

Разбирал анимацию появления текста и заметил строчку: overflow: hidden - сразу попробовал заменить эту строчку на visibility: hidden чтобы проверить будет ли результат таким же, но результат был уже другим, встал вопрос: чем же они отличаются.

Вот полный код программы:

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

        <style type="text/css">
        body{
            margin: 0;
            font-family: 'Courier New', Courier, monospace;
        }
    
        .wrap{
            display: flex;
            justify-content: center;
            white-space: nowrap;
            margin-top: 20px;
            margin-bottom: 40px;
        }
    
        .text_anim{
            width: 26ch;
            overflow: hidden;
            font-size: 36px;
            animation: text_displaying 5s steps(26);
            -moz-animation: text_displaying 5s steps(26);
            -webkit-animation: text_displaying 5s steps(26);
            -o-animation: text_displaying 5s steps(26);
        }
    
        @keyframes text_displaying{
            from{
                width: 0;
            }
        }

        @-o-keyframes text_displaying{
            from{
                width: 0;
            }
        }

        @-webkit-keyframes text_displaying{
            from{
                width: 0;
            }
        }

        @-moz-keyframes text_displaying{
            from{
                width: 0;
            }
        }
        </style>

    <title>Page</title>
</head>
<body>
        
    <div class="wrap">
        <span class="text_anim">Text-displaying animation.</span> 
    </div>
        
</body>
</html>

Ответы (1 шт):

Автор решения: humster_spb

Это совершенно разные свойства. Overflow управляет переполнением элемента (т.е. тем, как будут отображаться дочерние элементы, если они выходит за пределы родителя), а visibility - видимостью самого элемента.

→ Ссылка