Firefox, похоже, полностью игнорирует border
и outline
Свойства CSS, определенные для элементов SVG. Элементы группы SVG, <g>
, в моем случае, используются для группировки составных элементов в один логический элемент, чтобы упростить взаимодействие с пользователем в моем приложении. Следующий код работает очень хорошо в Chrome:Firefox: применение свойств CSS/CSS для SVG-элементов
<svg>
<g>
<rect x="10" y="10" width="50" height="50" fill="yellow"></rect>
<rect x="20" y="20" width="30" height="30" fill="yellowgreen"></rect>
</g>
</svg>
g:hover {
outline: dashed 4px red;
}
В Chrome, когда вы перемещаете указатель мыши на группу из двух прямоугольников, группа получает красный пунктирный прямоугольник вокруг него. Однако я не могу заставить его работать в Firefox, несмотря на то, что он поддерживает более простые свойства CSS, такие как cursor
, display
и свойства, связанные с SVG, такие как described at MDN.
Есть ли возможность сделать outline
и border
Свойства CSS работают в Firefox, поэтому изменение CSS может быть единственным эффективным патчем вместо исправления кода, связанного с SVG?
Благодарим за ответ и предложение 'getBBox()'. Что касается примера в JsFiddle, если бы я понял, что вы правы: это правило CSS отмечает любой '' как зависающий, а не целый контейнер '