使<svg>适合<object>容器的大小

til*_*lda 19 html css size html5 svg

我有这个标记:

#widget1 {
    height:100px;
    width:200px;
}

<div class="widget" id="widget1">
    <object data="foo.svg" type="image/svg+xml" />
</div>
Run Code Online (Sandbox Code Playgroud)

我设法使<object>元素填充外部<div>,但内部foo.svg文件有自己的想法有多大.我需要foo.svg(<svg>当然由一个元素组成)与<object>and的大小相同<div>.

Eri*_*röm 46

这在svg引物中得到回答(带有实例).

tl; dr摘要:

  • 删除svg根上的'width'和'height'属性,并添加一个值为"0 0 wh"的'viewBox'属性,其中w和h是通常在width和height属性中找到的绝对值(注意百分比)和viewBox属性中不允许使用其他单位)

  • 如果我无法编辑`.svg`文件怎么办?我可以从HTML中做到吗? (3认同)
  • @ColonelPanic如果svg和html是同源的,可以用脚本完成.以下是如何开始使用:http://stackoverflow.com/questions/14376732/work-with-elements-from-embed-or-object-tag. (2认同)