Практический пример использования функции attr в CSS

Практический пример использования функции attr в CSS

Практический пример использования функции attr в CSS

Рассмотрим на примере анимации текста, как можно использовать CSS функцию attr.

Создание, позиционирование и стилизация текста

Data-text представляет из себя data-атрибут, который используется для хранения информации. К тегу h1 добавлен атрибут data-text со значением Animation для дальнейших манипуляций с ним.


//HTML разметка

<h1 data-text="Animation...">Animation...</h1>

//CSS код
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@700&display=swap');
*{
    margin: 0;/*обнуление отступов*/

    padding: 0;/*обнуление полей*/

    box-sizing: border-box;/*чистая ширина блоков*/

    font-family: 'Poppins', sans-serif;/*название шрифта*/

}

body{

    display: flex;/*отображать как гибкий контейнер*/

    justify-content: center;/*горизонтальное выравнивание*/

    align-items: center;/*вертикальное выравнивание*/

    min-height: 100vh;/*на всю высоту экрана*/

    background: #0091EA;/*цвет фона*/

}

h1{

    position: relative;/*относительное позиционирование*/

    font-size: 14vw;/*размер шрифта*/

    color: #64B5F6;/*цвет текста*/

    line-height: 1.2em;/*вертикальное выравнивание*/

    text-transform: uppercase;/*трансформация от заглавных к маленьким буквам*/

    -webkit-text-stroke: 0.3vw #fff;/*цвет и толщина обводки текста*/

}

Практический пример использования функции attr в CSS

Создание копии текста

Сейчас у нас текст голубого цвета. Созданная копия текста должна плавно менять голубой текст на розовый. Функция attr передаст в качестве контента псевдоэлементу h1, значение data-text (слово Animation).


h1:before {

    content: attr(data-text);/*передача data-атрибута*/

    position: absolute;/*абсолютное позиционирование*/

    top: 0;/*позиция копии текста сверху*/

    left: 0;/*позиция копии текста слева*/

    width: 0;/*нулевая ширина копии текста*/

    height: 100%;/*вертикальное выравнивание*/

    color: #FFAB00;/*вертикальное выравнивание*/

    overflow: hidden;/*скрыть переполненность*/

    -webkit-text-stroke: 0vw #263238;/*ширина и цвет обводки*/

    border-right: 4px solid #FFAB00;/*рамка-курсор*/

    animation: animate 4s linear infinite;/*свойства анимации*/

}

Практический пример использования функции attr в CSS

Создание анимации текста

Анимация происходит за счет изменений значения ширины у розовой копии текста на разных кадрах.


@keyframes animate{
    0%,10%,100%
    {
        width: 0;
    }
    70%,90%
    {
        width: 100%;
    }
}

Практический пример использования функции attr в CSS

Посмотрите пример на CodePen

Источник

НЕТ КОММЕНТАРИЕВ

Оставить комментарий