rel="shortcut icon": что это значит
rel="shortcut icon" — это старый способ объявления favicon, восходящий к Internet Explorer. Ключевое слово "shortcut" нестандартно и игнорируется браузерами (учитывается только "icon"), так что обычный rel="icon" делает ровно ту же работу. Существующие теги по-прежнему работают, но нет причин писать "shortcut icon" в новой разметке.
Откуда это взялось
Ранний Internet Explorer распознавал favicon, только если ссылка говорила rel="shortcut icon". Другим браузерам часть "shortcut" никогда не была нужна. Спецификация HTML определяет ключевое слово "icon", а не "shortcut icon".
Браузеры воспринимают значение rel как список ключевых слов через пробел и сопоставляют те, что знают. В "shortcut icon" они находят "icon" и используют его, тихо игнорируя "shortcut". Так что тег работает, но лишнее слово ничего не делает.
Устаревшее против современного
<!-- legacy, still works but redundant -->
<link rel="shortcut icon" href="/favicon.ico" />
<!-- modern equivalent -->
<link rel="icon" href="/favicon.ico" sizes="any" />Частые вопросы о "shortcut icon"
Устарел ли shortcut icon?
Ключевое слово "shortcut" никогда не было частью стандарта, так что формально нечего объявлять устаревшим, но на практике оно вышло из употребления. Современная рекомендация — использовать один rel="icon".
Работает ли rel="shortcut icon" до сих пор?
Да. Браузеры сопоставляют ключевое слово "icon" внутри него и используют файл, игнорируя "shortcut". Favicon загружается ровно так же, как с обычным rel="icon".
В чём разница между "shortcut icon" и "icon"?
По эффекту никакой. "icon" — стандартное ключевое слово; "shortcut icon" — то же ключевое слово с избыточным устаревшим словом впереди.