SVG sprite
Довольно хороший способ отобразить вектор на странице несколько раз. Но как создать спрайт и использовать? Если у вас сборщик проекта — стоит только подключить нужный плагин и настроить. Небольшой спрайт можно и вручную создать, его структура может быть примерно такой:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<symbol id="ava-default">
...
</symbol>
<symbol id="cat-logo" viewBox="0 0 117 92">
...
</symbol>
</svg>
В этом примере symbol это и есть включенный вектор в спрайт. Его атрибуты такие же как и у самих иконок. Только id это название файла который используется в symbol. Не стоит забывать что у любого svg есть минимальные размеры. По этому стоит спрайт скрыть.
Ну и добавить svg можно следующим образом:
<svg width="50" height="50">
<use href="#ava-default"></use>
</svg>
Если же у вас внешний спрайт, то перед id необходимо указать путь до svg спрайта.
Тут ещё один момент: если изображение контентное, то необходимо его сделать изображением(до бавить role и подпись). В случае когда изображение декоративное, вектор необходимо скрыть от скринридера (focusable и aria-hidden)