Оказывается, подчеркивание можно делать с помощью градиентов.

.test-underline {
	background: linear-gradient(to right, #999, #999 100%);
	background-position: 0 100%;
	background-size: 10px 1px;
	background-repeat: repeat-x;
}

.test-dashed {
	background: linear-gradient(to right, #999, #999 60%, transparent 60%);
	background-position: 0 100%;
	background-repeat: repeat-x;
	background-size: 10px 1px;
}

.test-dotted {
	background: linear-gradient(to right, #999, #999 50%, transparent 50%);
	background-repeat: repeat-x;
	background-position: 0 100%;
	background-size: 3px 1px;
}

А если нужно просто поменять цвет подчеркивания и не важна поддержка IE, то можно использовать css свойство text-decoration-color.

.test-text-decoration {
	text-decoration: underline;
	text-decoration-color: #999;
}