• Страница 1 из 1
  • 1
Анимация подчеркивания для ссылок на CSS
Kosten
Понедельник, 20 Мая 2019, 22:55 | Сообщение 1
Оффлайн
Администраторы
Сообщений:44490
Награды: 70
Создает анимацию для эффекта, который отвечает за подчеркивания при наведении текста, которое отличается от стандартной анимации, ведь подчеркивание начнется с левой стороны по правую. Что теперь веб мастер может поменять полностью на своем сайта, а также поставить на ключевые слова, которые прописаны в материале или статье.

По оформлению все красиво и оригинально смотрится, что сам цвет идет под светлый или темный фон, ведь изначально ему задан светло синий оттенок. Где если решите сменить, то вся настройка происходит в прикрепленном CSS.



HTML

Код
<p class="dekartesu_aposegaod_ningon">Наведите курсор и увидите эффект</p>

CSS

Код
.dekartesu_aposegaod_ningon {
  display: inline-block;
  position: relative;
      color: #075780;
  cursor:pointer;
}
.dekartesu_aposegaod_ningon::after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: #0978af;
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}
.dekartesu_aposegaod_ningon:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

Здесь вы выставляете на ключевое слово свою гамму цвета, что будет при открытие страницы сразу заметна, что для этого в основном делают.

Демонстрация

1. display: inline-block делает блок так p, inline-block чтобы подчеркивание не охватывало всю родительскую ширину, а только содержимое.
2. position: relative на элементе устанавливает декартовой контекст позиционирования для псевдоэлементов.
3. ::after определяет псевдоэлемент.
4. position: absolute извлекает псевдоэлемент из потока документа и размещает его по отношению к родительскому элементу.
5. width: 100% гарантирует, что псевдоэлемент охватывает всю ширину текстового блока.
6. transform: scaleX(0) первоначально масштабирует псевдоэлемент до 0, чтобы он не имел ширины и не был виден.
7. bottom: 0 и left: 0 поместите его в нижнем левом углу блока.
8. transition: transform 0.25s ease-out означает, что изменения transform будут перенесены на 0,25 секунды с ease-out функцией синхронизации.
9. transform-origin: bottom right означает, что точка привязки преобразования расположена в правом нижнем углу блока.
10. :hover::after затем использует scaleX(1) для перехода ширину до 100%, а затем изменяет transform-originк bottom left таким образом, что точка привязки восстанавливается, что позволяет ему переходить в другом направлении.
Прикрепления: 7264240.png (117.1 Kb) · sanud.zip (1.6 Kb)
Страна: (RU)
Kosten
Воскресенье, 26 Мая 2019, 02:53 | Сообщение 2
Оффлайн
Администраторы
Сообщений:44490
Награды: 70
Анимированное подчеркивание градиента для Link Hover

Наведите курсор на ссылку, чтобы увидеть анимированный градиент подчеркивания:


See the Pen
Анимированное подчеркивание градиента
by Kocsten (@kocsten)
on CodePen.


Страна: (RU)
Kosten
Воскресенье, 26 Мая 2019, 03:01 | Сообщение 3
Оффлайн
Администраторы
Сообщений:44490
Награды: 70
Простое подчеркивающее меню CSS с переходами

HTML

Код
  <nav>
    <ul>
      <li class="item"><a href="#">link 1</a></li>
      <li class="item"><a href="#">link 2</a></li>
      <li class="item"><a href="#">link 3</a></li>
      <li class="item"><a href="#">link 4</a></li>
      <li class="item"><a href="#">link 5</a></li>
    </ul>
  </nav>

CSS

Код
ol, ul {
    list-style: none;
}
li {
    display: inline-block;
    padding: 20px 0 20px;
    vertical-align: middle;
}
a:hover, a:focus, a:active {
    color: #999;
    text-decoration: none;
}
a {
    font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
    text-decoration: none;
    transition: color 0.1s, background-color 0.1s;
}
a {
    position: relative;
    display: block;
    padding: 16px 0;
    margin: 0 12px;
    letter-spacing: 1px;
    font-size: 12px;
    line-height: 16px;
    font-weight: 900;
    text-transform: uppercase;
    transition: color 0.1s,background-color 0.1s,padding 0.2s ease-in;
    color: #000;
}
a::before {
    content: '';
    display: block;
    position: absolute;
    bottom: 3px;
    left: 0;
    height: 3px;
    width: 100%;
    background-color: #000;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: color 0.1s,transform 0.2s ease-out;
}
a:active::before {
    background-color: #000;
}
a:hover::before, a:focus::before {
    transform-origin: left top;
    transform: scale(1, 1);
}


Демонстрация
Страна: (RU)
  • Страница 1 из 1
  • 1
Поиск: