
Странно, что в такой хорошей подборке не указан простой способ с использованием псевдокласса :after.
Плюсы такого способа:
+ Простота использования;
+ Широкие возможности по настройкам (позиционирование, стиль, толщина, цвет линии);
+ Работает на любом фоне;
+ Не зависит от изменения масштаба (если текст при этом остается однострочным)
Минусы:
— Не подходит для подчеркивания многострочного текста;
Возможно есть еще какие-то минусы. Буду благодарен за подсказки.
<span class='inline-block decorated-link'>Ссылка в спане с {display: inline-block;} </span>
<br>
<br>
<a href='#' class='decorated-link'>Обычная ссылка</a>
.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;
}
Комментарии (20)
 - everythingispossible19.10.2016 13:51+2- Бывает нужно изменить позиционирование линии (сделать выше/ниже) относительно текста.  - Aingis19.10.2016 16:02- line-heightменяете и она прекрасно настраивается. - everythingispossible19.10.2016 18:45- У меня не получилось сделать это с помощью line-height. 
 
 Подскажите на этом примере:
 Какое значение и где задать line-height, чтобы вторая ссылка стала выглядеть, как первая?
  - muxa_ru19.10.2016 14:31- Визуальной разницы в примерах не вижу. 
 
 Это так и должно быть? - everythingispossible19.10.2016 14:48- Да, так и должно быть. 
 
 Значение отступа bottom для обычной ссылки и интерфейсной ссылки-кнопки (текст в элементе span) должны немного различаться, чтобы расстояние между линией и текстом было одинаковым.
 
 Решил это указать явно, чтобы немного сэкономить время тем, кто начнет применять такое подчеркивание.
 
  - alexkunin19.10.2016 17:31+2- Минусы: Так это ж и есть та единственная киллер-антифича, которая все плюсы перечеркивает. Очень редко можно быть на 100% уверенным, что текст ссылки не будет разбит из-за переноса. Случайное или намеренное увеличение контента средствами браузера, или размер окна слишком маленький, или локализация («save as» vs «сохранить как» — почти в 2 раза длиннее) — и все, получаем какой-то визуальный шум. А если паранойя придавит, то еще и неподгрузившиеся стили будут вам портить жизнь.
 — Не подходит для подчеркивания многострочного текста;
 
 Но как еще один способ с оговорками — имеет право на жизнь, конечно же. Забрал в копилку, спасибо. - EvilPartisan19.10.2016 22:45- Прием оформления используется тысячу лет, а какого нибудь «text-decoration: dashed-underline» до сих пор не придумали.  - alexkunin19.10.2016 23:58- Согласен. Было бы прикольно, если бы полностью всю маханику border перенесли на подчеркивание. Правда, наверняка это не делается потому, что подчеркивание рендерится как фича шрифта (шрифтозависимая фича, так сказать). 
  - Weks20.10.2016 09:56- Существует свойство text-decoration-style, однако, увы, оно очень плохо поддерживается (caniuse).  - everythingispossible20.10.2016 10:52- Самое неприятное даже не то, что text-decoration-style еще не вышел за рамки экспериментального функционала основных браузеров (и то не всех). 
 
 Самое неприятное, что свойство позиционирования линии до сих пор нет даже в экспериментальном функционале основных браузеров. А это значит, что увидим мы это еще не скоро.
 Без такого свойства смысл text-decoration-style во многом теряется.
 
 Линия dashed на таком же расстоянии от текста, что и линия solid, смотрится уродливо:
  
 
 
  - everythingispossible20.10.2016 11:06- Этот способ я использую только для оформления интерфейсных кнопок-ссылок (не знаю, как это правильно называется). Текст в таких кнопках обычно короткий и тестирование на мобильных устройствах показывает, что все в порядке. 
 
 Чтобы быть уверенным, что часть текста не перенесется на новую строку при изменении масштаба — можно использовать неразрывный пробел  :
 - <span class='show-on-map-link'>Показать на карте</span> - alexkunin20.10.2016 13:51- А лучше «white-space: nowrap» добавить прямо в класс ссылки — и нет мусора в хтмл (который еще нагенерить нужно, если текст приходит из конфига, базы или библиотеки локализации). 
 
 Кстати, еще: ваш сайт может быть кем-то переведен каким-нибудь гуглом, и тогда никаких гарантий на длину текста в этих кнопках.
 
 
  - netgoblin20.10.2016 00:19- Используйте в качестве цвета для псевдоэлементов значение currentColor и будет вам счастье =) 
 
 
 
 
           
 

M-A-XG
А зачем :after?
Можно просто использовать
border-bottom: 1px dashed;
artemt
Можно трансформации какие-нибудь накрутить при наведении, например