9

Вопрос по svg, html, css – Должно ли содержимое SVG быть видимым вне встроенного по умолчанию? [закрыто]

В прошлом я отвечал на вопрос о том, кто был не прав. в отношении изображений SVG, не являющихся «обрезанными» (overflow: hidden) в IE9, где все остальные поддерживающие браузеры делали это. ...

Спасибо за редактирование заголовка @Phrogz. У меня были некоторые проблемы с тем, как именно сформулировать вопрос.

от Kevin Peno

Вопрос актуален и конструктивен. Он просит уточнить спецификацию, которая по-разному реализована в разных браузерах, что относится к разработке браузеров, если ничего больше ...

от Yarin

@casperOne Я понимаю, откуда вы, но на самом деле я прошу помощи в понимании их интерпретации (большинство браузеров и шаблон) по сравнению с моей. В частности, где<b>I</b> ошиблась в моих исследованиях. Единственное упоминание о том, «кто прав» вот где я цитировал (плохо) из предыдущего ответа для контекста, почему я спрашивал в первую очередь. Спасибо за информацию, хотя я буду помнить о ней на будущее.

от Kevin Peno

@casperOne Как запрос о разъяснении спецификации не является реальным вопросом? Я вижу плохую формулировку, но не вижу, как она соответствует категории, которую вы пометили. Это слишком локализовано?

от Kevin Peno

Вы хотите, чтобы кто-то разъяснил, был ли кто-то прав или нет. Я мог бы открыть его снова, но затем я просто закрыл бы его снова как «Неконструктивно».

от casperOne

2 ответа

4

Спецификация SVG имеет это, чтобы сказать:http://www.w3.org/TR/SVG/styling.html#UAStyleSheet

Похоже на то, что Firefox и Chrome не делают?

4

Ваш первоначальный ответ кажется мне обоснованным с использованием указанных вами оснований (в частности, пятого и седьмого пунктовспецификация).

Кажется невероятным, что IE верен, а Webkit и Firefox - нет. Однако, как вы подозреваете, седьмой пункт пулиis дифференцирующий фактор.

Если вы загружаетеэтот тест в Chrome и используйте Инструменты разработчика для проверки SVG, вы увидите:

(user agent stylesheet)

svg:not(:root), symbol, image, marker, pattern, foreignObject {
  overflow: hidden;
}

Если вы включите & quot; Показать пользовательский агент CSS & quot; в Firebug вы видите это правило в Firefox:

svg.css (line 49) <System>

svg:not(:root), symbol, image, marker, pattern, foreignObject {
  overflow: hidden;
} 

Наконец, если вы редактируете контрольный пример, чтобы добавитьsvg { overflow:hidden } тогда IE визуально совпадает с другими браузерами.

Таким образом, мне кажется, что все три браузера ведут себя в соответствии со спецификацией, но Chrome / Safari / FF имеют правила UA, которые более точно соответствуют ожиданиям большинства пользователей.

If I could leave well-enough alone, this is where I'd stop this answer.

Однако если выизменить тестовый пример, чтобы добавитьsvg { overflow:visible }и Chrome, и Firefox не «правильно». показать переполненное содержимое. Я не уверен, как разрешить эту точку данных с остальной частью этого ответа. : /

Похожие вопросы