Ответы пользователя по тегу CSS
  • Как поменять цвет в svg файле?

    Sevlyar
    @Sevlyar
    Замечательный вопрос! Мне не удалось применить стили указанные в отдельном css файле к подключенному в страницу svg. Если это поможет, то вот как я делал. Код выдергивал из проекта, чтобы была понятна суть, возможно простым копированием не заработает, но смысл примерно такой:
    <body>
    	<object id="map-svg" type="image/svg+xml" data="map.svg"></object>
    </body>

    var map = document.getElementById("map-svg");
    var mapDoc = map.contentDocument;
    var element = mapDoc.getElementById("barrel-1");
    // так не заработало
    // element.setAttributeNS(null, "style", "fill:#008000");

    Тогда я сделал так, в svg указал таблицу стилей:
    <defs> 
        <style type="text/css">
          .wpc-active {
            fill: #008000;
          }
        </style>
    </defs>

    И в скрипте добавил код:
    element.classList.add('wpc-active');
    //element.classList.remove('wpc-active');
    Ответ написан
    2 комментария