我有一个svg应该是100%宽度的身体,它适用于ie11,chrome和firefox - 但在safari中,svg两侧有一些空间,我无法摆脱它。任何帮助表示赞赏 - 请看这里的小提琴: http://jsfiddle.net/tbbtester/2apEh/
css:
body{margin:0;padding:0;background:orange;}
.top {position: absolute;width: 100%;}
.inner{height:0;position: relative;padding-top:3.2%;}
svg{height: 100%;display:block;width: 100%;position: absolute;top:0;left:0;}
rect{stroke:none;fill:teal;}
标记:
<div class="top">
<div class="inner">
<svg viewBox='0 0 100 3.2' preserveAspectRatio="xMidYMid meet">
<rect x="0" y="0" height="3.2" width="100"/>
</svg>
</div>
</div>
答案 0 :(得分:3)
关于这个
似乎这个preserveAspectRatio="xMidYMid meet"
是问题。
如果您将其更改为
preserveAspectRatio="none"
问题解决了
答案 1 :(得分:0)
preserveAspectRatio
属性可以包含3种不同的值meet
slice
none
。查看 DEMO 。
所以,如果你使用
<svg viewBox='0 0 100 3.2' preserveAspectRatio="xMidYMid none">
而不是
<svg viewBox='0 0 100 3.2' preserveAspectRatio="xMidYMid meet">
你的问题可能会解决。