Простой способ оформления подчеркивания у однострочных ссылок

В недавнем дайджесте со свежими материалами из мира фронтенда увидел подборку способов подчеркивания в CSS.
b02402a0118b4753b2755762a0a08d90.png
Странно, что в такой хорошей подборке не указан простой способ с использованием псевдокласса : after.

Плюсы такого способа:
+ Простота использования;
+ Широкие возможности по настройкам (позиционирование, стиль, толщина, цвет линии);
+ Работает на любом фоне;
+ Не зависит от изменения масштаба (если текст при этом остается однострочным)

Минусы:
 — Не подходит для подчеркивания многострочного текста;

Возможно есть еще какие-то минусы. Буду благодарен за подсказки.

Ссылка в спане с {display: inline-block;} 


Обычная ссылка
.decorated-link {
    color: #337ab7;
    position: relative;
    text-decoration: none;
    cursor: pointer;
}

.decorated-link:hover {
    text-decoration: none;
    color: red;
}

.decorated-link:after {
    content: '';
    position: absolute;
    right: 0;
    left: 0;
    bottom: 1px;
    width: 100%;
    border-bottom: thin dashed rgba(51, 122, 181, 0.4);
}

.decorated-link:hover:after {
    border-color: rgba(255, 0, 0, 0.3);;
}

a.decorated-link:after {
    bottom: 0;
}

.inline-block {
    display: inline-block;
}

Комментарии (5)

  • 19 октября 2016 в 13:41

    +1

    А зачем : after?
    Можно просто использовать
    border-bottom: 1 px dashed;
    • 19 октября 2016 в 14:28

      0

      Можно трансформации какие-нибудь накрутить при наведении, например
  • 19 октября 2016 в 13:51

    +1

    Бывает нужно изменить позиционирование линии (сделать выше/ниже) относительно текста.
  • 19 октября 2016 в 14:31

    0

    Визуальной разницы в примерах не вижу.

    Это так и должно быть?

    • 19 октября 2016 в 14:48

      0

      Да, так и должно быть.

      Значение отступа bottom для обычной ссылки и интерфейсной ссылки-кнопки (текст в элементе span) должны немного различаться, чтобы расстояние между линией и текстом было одинаковым.

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

© Habrahabr.ru