Плавное увеличение нижнего подчеркивания у текста

294
25 февраля 2017, 05:49

Есть нижняя граница у текста, как сделать её плавное увеличение при наведении из центра слова до его краёв?

Вот так должно быть, в конечном результате.

Заранее спасибо!

Answer 1

Используем псевдо-элемент и сжимаем-разжимаем его по ширине при наведении:

Через transform:

.link{ 
   text-decoration:none; 
   position:relative; 
} 
 
.link:before{ 
   position:absolute; 
   bottom: -10px; 
   content: " "; 
   border-bottom: 1px solid #ccc; 
   transform: scale(0,1); 
   width:100%; 
   transition: transform 0.3s 
} 
 
.link:hover:before{ 
   transform: scale(1,1); 
}
<a class='link' href='#'>Ссылка</a>

Через width:

.link{ 
   text-decoration:none; 
   position:relative; 
} 
 
.link:before{ 
   position:absolute; 
   bottom: -10px; 
   content: " "; 
   border-bottom: 1px solid #ccc; 
   left:50%; 
   width:0%; 
   transition: all 0.3s; 
} 
 
.link:hover:before{ 
   width:100%; 
   left:0% 
}
<a class='link' href='#'>Ссылка</a>

READ ALSO
Чем boost::signal отличается от std::function

Чем boost::signal отличается от std::function

Чем boost::signal отличается от std::function ?

281
Расширение QTableWidget по контенту

Расширение QTableWidget по контенту

Есть QTableWidgetНужно чтобы он(сам виджет) изменял свои размеры в зависимости от контента

217
Где проверить исполнение программы

Где проверить исполнение программы

Написал вывод изображения в окне на opencv 32

247
Сортировка в файлах - C++ [требует правки]

Сортировка в файлах - C++ [требует правки]

1Имеется файл с данными, необходимо отсортировать эти данные (например, quicksort) по какому-то параметру, причем сделать это необходимо без создания...

245