В спецификации, на которую вы ссылаетесь, указано, что псевдокласс (в данном случае :link
) имеет более высокую специфичность, чем имя элемента. Чтобы быть точным, используя формат a-b-c-d, ваши три селектора получаются как:
a-b-c-d
0 0 1 1
0 0 0 3
0 0 1 3
Ваша путаница возможна из-за использования вами термина "псевдо-селектор", который не распознает различия между псевдоклассами, такими как :link
, и псевдо-элементами, такими как :first-line
.