我的HTML页面中有一个svg对象,其中包含多个外来对象。除了视频元素之外,所有这些都像我期望的那样工作并且与svg一起负责任地扩展。
视频元素不尊重它的容器对象宽度/高度。我既不能使用默认的视频控制选项,也会显示播放菜单但不能互动。 此问题仅发生在Chrome 中,Firefox会按预期显示该元素,并且该视频可播放。
printscreen comparing chrome (fail) with firefox (success)
我已经尝试解决这个问题(没有成功):
#svgContainer {
width:500px;
height:250px;
background-color:#34ff00;
}
#videoTitle {
font-size:80px;
font-weight:bold;
}
#videoObject {
width:100%;
height:auto;
object-fit:contain;
}

<div id="svgContainer">
<?xml version="1.0" encoding="utf-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 959.8 540">
<g id="DIA_REGULARMEDIAVIDEO">
<foreignObject x="50" y="25" width="655" height="69">
<div id="videoTitle">My video</div>
</foreignObject>
<foreignObject x="0" y="120" width="959.8" height="420">
<video id="videoObject" x="0" y="0" width="300" controls="" preload="">
<source src="http://techslides.com/demos/sample-videos/small.mp4" type="video/mp4"/>
</video>
</foreignObject>
</g>
</svg>
</div>
&#13;