Как известно, при открывании внешних ссылок на новых вкладках у тэга
a должны быть атрибуты
target="blank" и
rel=“noopener noreferrer”, а если ещё нужно попросить поисковых роботов игнорировать ссылку (приказать, насколько я знаю, не получится), то
rel=“noopener noreferrer nofollow”. А что насчёт внутренних ссылок, если их надо открыть на другой вкладке?
Чтобы организовать знания по этой теме, подготовил такую блок-схему:
На то, что атрибут
rel как-то связан с безопасностью, я обратил внимание при изучении ESLint-правила
jsx-no-target-blank.md, где чётко сказано ("severe security vulnerability" - "серьёзная уязвимость в безопасности"), что использование
target='_blank' без
rel='noreferrer' является серьёзной уязвимостью:
Using this attribute unaccompanied by rel='noreferrer', however, is a severe security vulnerability (see noreferrer docs and noopener docs for more details)