Man*_*God 4 css internet-explorer svg css3
最近,我创建了一个被svg屏蔽的图像,该图像在Chrome中可完美运行,但在我的Internet Explorer版本中无法正常工作。这是我的svg预期的最终结果
这是我的SVG代码
<svg width="0" height="0" viewBox="0 0 160 160">
<defs>
<clipPath id="shape">
<path d="M10,70 Q0,80 10,90 L70,150 Q80,160 90,150 L150,90 Q160,80 150,70 L90,10 Q80,0 70,10z" />
</clipPath>
</defs>
</svg>
<img src='http://i.imgur.com/NR6kefg.jpg' class='photo_rectangle_inverse' />
<img src='http://i.imgur.com/DXaH323.jpg' class='photo_rectangle_inverse' />
Run Code Online (Sandbox Code Playgroud)
这是我的CSS
* {
padding: 0;
margin: 0;
}
.photo_rectangle_inverse {
height: 160px;
width: 170px;
-webkit-clip-path: url(#shape);
clip-path: url(#shape);
position: relative;
-webkit-transform: translateZ(1px)
}
Run Code Online (Sandbox Code Playgroud)
由于svg在Internet Explorer(IE 11)中无法使用,因此在阅读了有关浏览器兼容性问题的文章后,我添加了
<meta http-equiv="X-UA-Compatible" content="IE=edge">
Run Code Online (Sandbox Code Playgroud)
我的页面顶部,因为基于本文的IE Edge似乎与Svg最兼容。
但svg形状仍未显示。
这是一个Jsfiddle。注意Jsfiddle不允许使用meta标签
如何使svg蒙版图像与Internet Explorer兼容?
ks
IE不会将SVG剪辑应用于html元素,因此您需要SVG <image>
元素而不是HTML <img>
元素,例如
* {
padding: 0;
margin: 0;
}
html, body {
height: 100%;
width: 100%;
}
.photo_rectangle_inverse {
-webkit-clip-path: url(#shape);
clip-path: url(#shape);
position: relative;
-webkit-transform: translateZ(1px)
}
Run Code Online (Sandbox Code Playgroud)
<svg height="100%" width="100%" >
<defs>
<clipPath id="shape">
<path d="M10,70 Q0,80 10,90 L70,150 Q80,160 90,150 L150,90 Q160,80 150,70 L90,10 Q80,0 70,10z" />
</clipPath>
</defs>
<image height="160px" width="170px" xlink:href='http://i.imgur.com/NR6kefg.jpg' class='photo_rectangle_inverse'/>
<image transform="translate(170,0)" height="160px" width="170px" xlink:href='http://i.imgur.com/DXaH323.jpg' class='photo_rectangle_inverse' />
</svg>'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11734 次 |
最近记录: |