Michael Schröpl: alle CSS-Definitionen in eine Zeile

Beitrag lesen

Hi,

ich hatte heute (ein bischen herumgespielt) eine
HTML Seite durch einen Filter geschickt, der die
ganzen CR/NLs entfernt und somit den den ganzen Code
auf eine Zeile reduziert.

so etwas Ähnliches verwende ich auch.

Allerdings ist es für HTML im Allgemeinen nicht nutzbar, da Zeilenumbrüche als whitespace gelten und dieses innerhalb von Text keineswegs entfernt werden darf. Andererseits gibt es wiederum Stellen, wo das whitespace stört (beispielsweise nach einem "<td>").

Daher entferne ich zwar führende und folgende Leerzeichen (ich _weiß_, daß ich kein <pre> verwende) sowie Kommentare in der 'proprietären' PASCAL-Formatierung "(* ... *)", aber Zeilenumbrüche nur dann, wenn das letzte nicht-whitespace der Zeile ein von mir definiertes Zeichen ist (ich verwende dafür "", aber das ist willkürlich). Ich muß also im "Original-Quelltext" Zeilen, die verschmolzen werden dürfen, als solche explizit markieren.
Aufeinanderfolgende Zeilenumbrüche verschmelze ich allerdings automatisch zu nur noch einem solchen.

Ich bin bisher immer davon ausgegangen das dieses
in-eine-Zeile-packen neben den <PRE> und
<SCHNULLISCRIPT>-Bereichen auch den CSS-Bereich
unbrauchbar machen würde

Ich nicht.

Jede einzelne CSS-Deklaration ist hinreichend gut geklammert, um whitespace aller Art irrelevant zu machen. Und die Einbindung von CSS in HTML erfolgt mit HTML-Tags ...
Nach meiner Erfahrung klappt das auch mit sehr langen Zeilen in allen bekannten Browsern.

Viele Grüße
      Michael