Я просто розробив значно простіше рішення. (Так, я знаю, що це давнє питання, але хтось, хто досліджує цю проблему, може вважати це корисним.)
Я використовував SVG під назвою hamburger.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 і не потрібно відстежувати інший значок.
Легко піаси! Ви можете імітувати це, щоб зробити ваш гамбургер будь-якого кольору, який вам подобається.