将SVG元素放置在img标签之上

3
如何将svg元素(矩形、圆形等)放置在html上方。这是我的代码。可以有人帮忙吗?
<div id="myImgId" style="width: 200px; height: 200px; background:#000;" onmousedown="doSomething()" onmouseup="return false;">
<img src="Chrysanthemum.jpg" width="200" height="200" />
<svg id="svgOne" y="200" width="200" height="200"></svg>
</div> 
2个回答

7

JSFIDDLE: http://jsfiddle.net/nsgch/

<div id="myImgId" style="width: 200px; height: 200px; background:#000;" onmousedown="doSomething()" onmouseup="return false;">
   <img src="Chrysanthemum.jpg" width="200" height="200" style="position:absolute;"/>

   <svg id="svgOne" y="200" width="200" height="200" style="position:absolute; left:90px; top:90px;">
      <path fill="#014da2" d="M16,1.466C7.973,1.466,1.466,7.973,1.466,16C1.466,24.027,7.973,30.534,16,30.534C24.027,30.534,30.534,24.027,30.534,15.999999999999998C30.534,7.973,24.027,1.466,16,1.466Z"></path>
   </svg>
</div> 

2

根据您的需求,您可以为元素设置position: fixed或position: absolute样式。

<div id="myImgId" style="width: 200px; height: 200px; background:#000;" onmousedown="doSomething()" onmouseup="return false;">
<img style="position:fixed;" src="http://images.nationalgeographic.com/wpf/media-live/photos/000/005/cache/domestic-cat_516_600x450.jpg" width="200" height="200" />
    <svg style="position:fixed;top:50px" id="svgOne" width="200" height="200"><rect width="100%" height="100%" fill="red"/></svg>
</div> 

请注意,外部<svg>元素的x和y属性将被忽略。你需要使用top和left样式来定位它,就像定位HTML元素一样。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接