Ну во-первых такие иконки ставятся только на внешние ссылки, а не на совершенно любые. Поэтому одним CSS тут явно не обойтись. Во-вторых, у такого способа есть один недостаток: при наведении указателя мыши на саму иконку, он не меняет внешний вид на указатель для ссылок, а хотелось бы. Поэтому одним CSS тут снова не обойтись. Необходимо у каждой такой ссылки добавлять контейнер, в котором делать бекграунд с паддингом, потом на этот контейнер вешать событие OnClick и менять указатель мыши на Pointer. Ну это в идеале.)