1
0
mirror of https://github.com/svg/svgo.git synced 2025-07-31 07:44:22 +03:00

Fixed error on empty or CDATA styles. Fixed #455. Fixes #456

This commit is contained in:
GreLI
2015-11-21 13:00:31 +03:00
parent da5107abd8
commit fc174aa9f0
2 changed files with 21 additions and 2 deletions

View File

@ -42,8 +42,8 @@ var minifyCss = function(css, options) {
exports.fn = function(item, svgoOptions) { exports.fn = function(item, svgoOptions) {
if(item.elem) { if(item.elem) {
if(item.isElem('style')) { if(item.isElem('style') && !item.isEmpty()) {
var styleCss = item.content[0].text; var styleCss = item.content[0].text || item.content[0].cdata || [];
if(styleCss.length > 0) { if(styleCss.length > 0) {
var styleCssMinified = minifyCss(styleCss, svgoOptions); var styleCssMinified = minifyCss(styleCss, svgoOptions);
item.content[0].text = styleCssMinified; item.content[0].text = styleCssMinified;

View File

@ -0,0 +1,19 @@
<svg id="test" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<style>
<![CDATA[
.st0{ fill:red; padding-top: 1em; padding-right: 1em; padding-bottom: 1em; padding-left: 1em; } @media screen and (max-width: 200px) { .st1 { display: none; } }
]]>
</style>
<style></style>
<rect width="100" height="100" class="st0" style="stroke-width:3; margin-top: 1em; margin-right: 1em; margin-bottom: 1em; margin-left: 1em;"/>
</svg>
@@@
<svg id="test" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<style>
.st0{fill:red;padding:1em}@media screen and (max-width:200px){.st1{display:none}}
</style>
<style/>
<rect width="100" height="100" class="st0" style="stroke-width:3;margin:1em"/>
</svg>

After

Width:  |  Height:  |  Size: 772 B