Проблема не в figure
, а в теге object
. Этот тег выполняется во вложенном контексте, который не передает события обратно родителю; поэтому, когда вы нажимаете на фигуру, загруженную объектом, он не срабатывает от внедренного объекта, никогда не достигая щелчка на вашем figure
.
Тег object
предназначен для запуска встроенных приложений (флэш-приложений в те времена), поэтому он имеет ненормальное поведение, подобное iframe
, есть много проблем безопасности.
Вы можете использовать img
для загрузки svg
вместо объекта, он будет загружаться таким же образом, и это вызывает событие обратно к родителю, следовательно, вызывая щелчок по родителю figure
.
<figure>
<img width="100" height="100" src="./path/to/img.svg">
</figure>
Ниже приведен фрагмент, показывающий различное поведение при использовании object
и img
для загрузки изображения, второй вызывает щелчок.