我正在尝试获取顶部有角度的图像,并且图像需要通过CMS进行更新。我发现最符合浏览器的方法是使用 SVG,创建一个路径并为其提供模式。我现在的代码是:
<svg class="workIntroImage" width="696px" height="921px" viewBox="0 0 696 921">
<defs>
<pattern id="workIntroImg" width="1920" x="0" y="0" height="1080" patternUnits="userSpaceOnUse">
<image xlink:href="https://www.usmagazine.com/wp-content/uploads/2017/12/147234372_the-office-zoom.jpg" x="0" y="0" width="1920" height"1080"></image>
</pattern>
</defs>
<g x="0" y="0" transform="translate(-37.000000, 0.000000)">
<path x="0" y="0" d="M0,0 L725.886225,151.670321 C729.593802,152.445001 732.25,155.713561 732.25,159.501206 L732.25,928 L0,928 L0,0 Z" fill="url(#workIntroImg)"></path>
</g>
</svg>
但它只适用于Chrome - 只是在Firefox,Safari和Edge中显示为空白。任何适用于所有现代浏览器的见解或替代解决方案将不胜感激!
这可能
只是一个错字 - <image ... height"1080">
中缺少一个=
。Chrome擅长解析无效标记,其他浏览器并不总是那么多。
<svg class="workIntroImage" width="696px" height="921px" viewBox="0 0 696 921">
<defs>
<pattern id="workIntroImg" width="1920" x="0" y="0" height="1080" patternUnits="userSpaceOnUse">
<image xlink:href="https://www.usmagazine.com/wp-content/uploads/2017/12/147234372_the-office-zoom.jpg" x="0" y="0" width="1920" height="1080"></image>
</pattern>
</defs>
<g x="0" y="0" transform="translate(-37.000000, 0.000000)">
<path x="0" y="0" d="M0,0 L725.886225,151.670321 C729.593802,152.445001 732.25,155.713561 732.25,159.501206 L732.25,928 L0,928 L0,0 Z" fill="url(#workIntroImg)"></path>
</g>
</svg>