Hi. I've built a CHM file using the new styling.
It is a bit of a hack as rather than just a single CSS file, 3 are required and also an additional class attribute. The css class "docs" is not known in the CHM html files. I've set that on <body class="docs"> and that seems to be good. It seems IE is making a right pig of the new styling at the moment, though in the CHM reader, things look quite good. >From what I can see, alternate row colouring and last column styling is unsupported by IE in the current form (just using CSS). Richard. -- Richard Quadling Twitter : EE : Zend @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY
Index: phpdotnet/phd/Package/PHP/CHM.php =================================================================== --- phpdotnet/phd/Package/PHP/CHM.php (revision 307074) +++ phpdotnet/phd/Package/PHP/CHM.php (working copy) @@ -238,7 +238,12 @@ $this->hhcStream = fopen($this->chmdir . "php_manual_{$lang}.hhc", "w"); $this->hhkStream = fopen($this->chmdir . "php_manual_{$lang}.hhk", "w"); - file_put_contents($this->outputdir . "style.css", $this->fetchStylesheet() . PHP_EOL . 'body { padding : 3px;}'); + file_put_contents($this->outputdir . "style.css", + $this->fetchStylesheet('reset.css') . PHP_EOL . + $this->fetchStylesheet('theme.css') . PHP_EOL . + $this->fetchStylesheet('doc.css') . PHP_EOL . + 'body { padding : 3px;}' + ); self::headerChm(); break; @@ -391,11 +396,16 @@ public function header($id) { $header = parent::header($id); - // Add CSS link to <head> - $pattern = '/(.*)(\r|\n|\r\n|\n\r)(.*)<\/head>/'; - $replacement = '$1 <link media="all" rel="stylesheet" type="text/css" href="style.css"/>$2$3</head>'; - - $header = preg_replace($pattern, $replacement, $header); + + $patterns = array( + '/(.*)(\r|\n|\r\n|\n\r)(.*)<\/head>/', // Add CSS link to <head> + '/(<body)/', // Add 'docs' class to body. + ); + $replacements = array( + '$1 <link media="all" rel="stylesheet" type="text/css" href="style.css"/>$2$3</head>', + '$1 class="docs"', + ); + $header = preg_replace($patterns, $replacements, $header); return $header; } @@ -412,8 +422,11 @@ } protected function fetchStylesheet($name = null) { - $stylesheet = file_get_contents("http://www.php.net/styles/site.css"); - if ($stylesheet) return $stylesheet; + $stylesheet = file_get_contents("http://www.php.net/styles/" . (is_null($name) ? "site.css" : $name)); + if ($stylesheet) { + v("Loaded $name stylesheet.", VERBOSE_MESSAGES); + return $stylesheet; + } else { v("Stylesheet not fetched. Uses default rendering style.", E_USER_WARNING); return "";