background-image使用svg如何改变颜色

简介:

结论

在我多番测试之后,才发现background-image使用svg,改变颜色根本做不了。

分析
当svg图片被使用成background-image,颜色的设置需要在svg内部才能生效。在外部CSS设置颜色样式,却是无效,这其实可以从CSS选择器得到解释,CSS选择器必须选择到DOM元素,而svg却被做成背景图,并没有以元素引入,所以在外部也就设不了颜色。

例子

CSS:

复制代码
i {
    display: inline-block;
    width: 100px;
    height: 100px;
}
.icon-del{
    background-image: url(delete.svg);
}
.st0{fill:#EC665E;}
.st1{fill:#FFFFFF;}
复制代码

HTML:

<i class="icon-del"></i>

SVG:

复制代码
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
      viewBox="-691 693 16 16" style="enable-background:new -691 693 16 16;" xml:space="preserve">
<title>删除群成员</title>
<desc>Created with Sketch.</desc>
<g id="Page-1">
     <g id="群组名片成员_x28_管理员_x29_" transform="translate(-284.000000, -249.000000)">
          <g id="Group-19">
               <g id="Group-14" transform="translate(20.000000, 120.000000)">
                    <g id="群成员-copy-4" transform="translate(0.000000, 121.000000)">
                         <g id="删除群成员" transform="translate(264.000000, 8.000000)">
                              <g id="Group" transform="translate(2.000000, 2.000000)">
                                   <g id="Oval-9">
                                        <circle class="st0" cx="-685" cy="699" r="6"/>
                                   </g>
                                   <g id="Path-2">
                                        <path class="st1" d="M-681,700h-8c-0.6,0-1-0.4-1-1s0.4-1,1-1h8c0.6,0,1,0.4,1,1S-680.4,700-681,700z"/>
                                   </g>
                              </g>
                         </g>
                    </g>
               </g>
          </g>
     </g>
</g>
</svg>
复制代码
相关文章
|
移动开发 前端开发 JavaScript
前端摸鱼神器,设计稿一键导出 「小程序/Vue/Uni-app」代码
这款神器就是「CodeFun」,它号称“UI 设计稿智能生成源代码,10 分钟完成 8 小时工作量”,让我们做前端,不搬砖
2769 0
前端摸鱼神器,设计稿一键导出 「小程序/Vue/Uni-app」代码
|
机器学习/深度学习 SQL 数据可视化
数据分享|数据探索电商平台用户行为流失可视化分析
数据分享|数据探索电商平台用户行为流失可视化分析
|
关系型数据库 MySQL 网络安全
KaliLinux常见问题与解决方案
KaliLinux常见问题与解决方案
1943 2
|
缓存 Rust 前端开发
【一起学Rust | 框架篇 | Tauri2.0框架】Tauri2.0环境搭建与项目创建
【一起学Rust | 框架篇 | Tauri2.0框架】Tauri2.0环境搭建与项目创建
2776 0
|
SQL 存储 数据管理
一篇文章带你掌握SQLite3基本用法
通过本文的介绍,希望您能深入理解SQLite3的基本用法,并在实际开发中灵活运用这些知识,提升数据管理效率。
2094 5
|
前端开发 JavaScript
如何在 JavaScript 中访问和修改 CSS 变量?
【10月更文挑战第28天】通过以上方法,可以在JavaScript中灵活地访问和修改CSS变量,从而实现根据用户交互、页面状态等动态地改变页面样式,为网页添加更多的交互性和动态效果。在实际应用中,可以根据具体的需求和场景选择合适的方法来操作CSS变量。
760 12
|
前端开发 算法 容器
css【详解】grid布局—— 网格布局(栅格布局)(一)
css【详解】grid布局—— 网格布局(栅格布局)(一)
2941 1
|
移动开发 前端开发 JavaScript
技术笔记:sortable的基本属性
技术笔记:sortable的基本属性
537 0
|
运维 关系型数据库 Linux
2020最新最适合运维人员学习路线(从0-1的必经之路,持续更新)
2020最新最适合运维人员学习路线(从0-1的必经之路,持续更新)
979 0

热门文章

最新文章