Практический пример использования функции 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:[email protected]&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

Источник

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

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