Fixed issue #1 from GitHub tracker.
authorJakub Pawlowicz <jakub@goalsmashers.com>
Wed, 25 May 2011 17:47:48 +0000 (19:47 +0200)
committerJakub Pawlowicz <jakub@goalsmashers.com>
Wed, 25 May 2011 17:47:48 +0000 (19:47 +0200)
* 'none' in longer/full background declaration is not shortened to 0.

lib/clean.js
test/unit-test.js

index dcc83e9..39ae837 100644 (file)
@@ -103,7 +103,8 @@ var CleanCSS = {
       return filter.toLowerCase() + args + suffix;
     })
     replace(/(\s|:)0(px|em|ex|cm|mm|in|pt|pc|%)/g, '$1' + '0') // zero + unit to zero
-    replace(/(border|border-top|border-right|border-bottom|border-left|outline|background):none/g, '$1:0') // none to 0
+    replace(/(border|border-top|border-right|border-bottom|border-left|outline):none/g, '$1:0') // none to 0
+    replace(/(background):none([;}])/g, '$1:0$2') // background:none to 0
     replace(/0 0 0 0/g, '0') // multiple zeros into one
     replace(/([: ,=\-])0\.(\d)/g, '$1.$2')
     replace(/[^\}]+{(;)*}/g, '') // empty elements
index 681715d..659a23a 100644 (file)
@@ -176,6 +176,7 @@ vows.describe('clean-units').addBatch({
       'a{outline:0}'
     ],
     'display:none not changed': 'a{display:none}',
+    'longer background declaration not changed': 'html{background:none repeat scroll 0 0 white}',
     'mixed zeros not changed': 'div{margin:0 0 1px 0}',
     'mixed zeros not changed #2': 'div{padding:0 1px 0 0}'
   }),