本篇文章给大家带来的内容是关于在CSS背景图片中使用svg的用法介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
在CSS背景图片中使用SVG,可以使用css background属性的诸多特性,比如图片尺寸和图片位置等等。可以非常轻松的根据设备的尺寸来控制图片的尺寸,还有一个好处就是可以不用把SVG图片插入到html中,从而保持html的整洁。
在CSS背景图片中使用SVG,有很多的优点,对提高性能也是有很大帮助的。那在CSS背景图片中使用SVG,有什么方法来改变它的颜色呢?接着看。
CSS mask
使用CSS中mask来改变背景颜色,这个方法简单实用,重要的是现在浏览器对它的支持越来越好。mask属性可以用来根据元素的轮廓来创建一个遮罩,使用遮罩可以只显示指定图片内容的区域,而图片区域以外的则是隐藏的。下面是它的使用方法:.icon {
background-color: red;
-webkit-mask-image: url(icon.svg);
mask-image: url(icon.svg);
}
mask还有很多的属性,比如mask-position、mask-repeat和mask-size,它们跟CSS中背景图片的对应属性的使用方法都差不多,也可以像background一样来使用简写语法:.icon {
background-color: red;
-webkit-mask: url(icon.svg) no-repeat 50% 50%;
mask: url(icon.svg) no-repeat 50% 50%;
}
浏览器对mask的支持也越来越好。可以通过下面的地址来看看各个浏览器对它的支持情况:
https://caniuse.com/#search=mask-image
另外如果不限于在css中修改的话,可以直接修改svg源文件
把svg图片拖到编辑器里可以看到svg源代码<?xml version="1.0" standalone="no"?>
540202401705" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10044" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
直接找到里面的 fill属性修改里面的色值就行了