From e5ded285c09b7ac3b86ae6ec95045db373f59d74 Mon Sep 17 00:00:00 2001 From: Steve Clay Date: Thu, 5 Mar 2009 16:46:47 +0000 Subject: [PATCH] CSS/Compressor.php : fix Issue 95 + test --- min/lib/Minify/CSS/Compressor.php | 5 ++++- min_unit_tests/_test_files/css/hacks.css | 4 ++++ min_unit_tests/_test_files/css/hacks.min.css | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/min/lib/Minify/CSS/Compressor.php b/min/lib/Minify/CSS/Compressor.php index 6aedcbd..57ccd6a 100644 --- a/min/lib/Minify/CSS/Compressor.php +++ b/min/lib/Minify/CSS/Compressor.php @@ -147,7 +147,10 @@ class Minify_CSS_Compressor { \\s+ /x' ,"$1\n", $css); - + + // prevent triggering IE6 bug: http://www.crankygeek.com/ie6pebug/ + $css = preg_replace('/:first-l(etter|ine)\\{/', ':first-l$1 {', $css); + return trim($css); } diff --git a/min_unit_tests/_test_files/css/hacks.css b/min_unit_tests/_test_files/css/hacks.css index 9108750..fccd321 100644 --- a/min_unit_tests/_test_files/css/hacks.css +++ b/min_unit_tests/_test_files/css/hacks.css @@ -60,3 +60,7 @@ foo { /* filters for IE */ @media tty { i{content:"\";/*" "*/}} @import 'midpassafter.css'; /*";} }/* */ + +/* leave at least 1 space between these pseudo elements and "{" for IE6: http://www.crankygeek.com/ie6pebug/ */ +p:first-letter {color:red;} +p:first-line {color:red;} diff --git a/min_unit_tests/_test_files/css/hacks.min.css b/min_unit_tests/_test_files/css/hacks.min.css index df11033..c26cea8 100644 --- a/min_unit_tests/_test_files/css/hacks.min.css +++ b/min_unit_tests/_test_files/css/hacks.min.css @@ -1,4 +1,4 @@ /*\*/a{}.foo{color:red}/**//*\*//*/@import "ie5mac.css";/**//*/*/.foo{display:block}/**//*/*//*/.foo{display:crazy}/**/div{width:140px;width/**/:/**/100px;width:/**/100px}html>/**/body{}div{width:400px;voice-family:"\"}\"";voice-family:inherit;width:300px}div{filter:chroma(color=#aabbcc);filter:mask(color=#000000) shadow(color=#9BAD71, direction=135) chroma(color=#000000)}@media screen{/*\*/* html div#page{height:1%}/**/}foo{_height:20px;*height:15px}@media -tty{i{content:"\";/*" "*/}}@import 'midpassafter.css';/*"}}/* */ \ No newline at end of file +tty{i{content:"\";/*" "*/}}@import 'midpassafter.css';/*"}}/* */p:first-letter {color:red}p:first-line {color:red} \ No newline at end of file