【发布时间】:2017-04-05 08:32:37
【问题描述】:
我使用 SVG 文件本身的 preserveAspectRatio 和 viewBox 属性创建了一个可扩展的 SVG 对象:
<svg
…
width="800"
height="800"
preserveAspectRatio="xMinYMin meet"
viewBox="0 0 800 800"
…
在 HTML 中,我使用 <object> 标记引用 SVG 文件并将其包装为 <a> 标记(我想这样做以便以后可以设置样式):
<a>
<object type="image/svg+xml" data="smiley.svg">
</object>
</a>
我用一些 CSS 设置 <object> 标签的样式,使其宽度为 50%,并且不超过 100%:
object {
max-width: 100%;
width: 50%;
}
问题是锚标记没有环绕对象!
有什么想法吗?
【问题讨论】:
-
w3.org/TR/html5/text-level-semantics.html#the-a-element: “内容模型:透明,但不能有interactive content后代。”
-
哎呀,我可以看到这些词,但它们没有意义!为什么,用简单的英语来说,
<object>的行为会与<img>不同? -
因为一个对象可以包含交互内容(甚至SVG本身也可以是交互内容)。