我试图让SVG视口占据页面宽度和高度的100%:
然而,它似乎只有在我改变它时才出现:
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 100 100" enable-background="new 0 0 100 100" xml:space="preserve" id="city">
对此(视口大小):
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1400 1400" enable-background="new 0 0 1400 1400" xml:space="preserve" id="city">
我的理解是 100
意味着它占据了整个视口百分比,那为什么它会出现在页面之外呢?
3 回答
你还必须定义
viewBox
属性 . 此外,您还可以使用Preserving Aspect Ratio
.视图框号代表像素,而不是百分比 . 如果要覆盖整个容器,则必须将SVG元素的宽度和高度设置为100%
使用此代替:
这是小提琴:http://jsfiddle.net/t5rhp/
viewBox="0 0 100 100"
简单地说
viewbox
定义了SVG的坐标系限制......它没有(真的)与HTML中元素的尺寸有关,你可以在SVG本身或CSS中设置它们 .通过改变你实际上说的
viewbox
,我只想看到1400x1400 SVg的左上角100x100部分 .编辑:JSfiddle demo
使用原始1400视图和任何CSS尺寸 .