我刚刚开发了一个相当简单的解决方案。(是的,我知道这是一个老问题,但是研究相同问题的人可能会发现这很有用。)
我正在使用一个名为hamburger.svg的SVG。我用文本编辑器查看了它,却找不到任何为这三行设置颜色的东西-我猜它默认为黑色,因为这肯定是我得到的行为-所以我只是向其中添加了“笔画”参数SVG的定义。那不是很有效-三行的边框是我选择的颜色(白色),但是其余行仍然是黑色,因此我也添加了一个“填充”参数。那就成功了!
这是原始hamburger.svg的全部代码:
<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'><svg height="32px" id="Layer_1" style="enable-background:new 0 0 32 32;" version="1.1" viewBox="0 0 32 32" width="32px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M4,10h24c1.104,0,2-0.896,2-2s-0.896-2-2-2H4C2.896,6,2,6.896,2,8S2.896,10,4,10z M28,14H4c-1.104,0-2,0.896-2,2 s0.896,2,2,2h24c1.104,0,2-0.896,2-2S29.104,14,28,14z M28,22H4c-1.104,0-2,0.896-2,2s0.896,2,2,2h24c1.104,0,2-0.896,2-2 S29.104,22,28,22z"/></svg>
这是我编辑新的SVG并将其保存为hamburger_white.svg之后的代码:
<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'><svg height="32px" id="Layer_1" style="enable-background:new 0 0 32 32;" version="1.1" viewBox="0 0 32 32" width="32px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M4,10h24c1.104,0,2-0.896,2-2s-0.896-2-2-2H4C2.896,6,2,6.896,2,8S2.896,10,4,10z M28,14H4c-1.104,0-2,0.896-2,2 s0.896,2,2,2h24c1.104,0,2-0.896,2-2S29.104,14,28,14z M28,22H4c-1.104,0-2,0.896-2,2s0.896,2,2,2h24c1.104,0,2-0.896,2-2 S29.104,22,28,22z" stroke="white" fill="white"/></svg>
如您所见,如果您向右滚动,我所做的就是添加:
stroke="white" fill="white"
到这条路的尽头。我要做的另一件事是在HTML中更改汉堡包的文件名。完全不会弄乱CSS,也无需跟踪另一个图标。
轻松说!您可以模仿它使您的汉堡包任何您喜欢的颜色。