So leicht kanns passieren: eine Webseite, die kurz vor der Fertigstellung steht, habe ich aus der Testumgebung auf ihre neue Domain umgezogen - nebst MySQL-Datenbank und Joomla! An sich kein aufregender Vorgang, da alles schon x-Mal gemacht. Ein kurzer Test... alles läuft einwandfrei. Dann noch weiteren zugelieferten Content eingegeben und das ganze zum Abschluss nochmal routinemäßig in verschiedenen Browsern betrachtet. Doch plötzlich lief es nur noch im Firefox. Ausnahmslos alle anderen Browser schnitten die Seite knapp unter dem Kopfbereich ab oder verstümmelten sie stark, der Content fehlte fast vollständig. Egal ob Internet Explorer - bei dem wir Kummer gewöhnt sind -, Opera, Safari oder der neue Chrome, alle zeigten sie ein ähnliches Bild.
Das ein einzelner Browser hin und wieder ein ähnliches Verhalten zeigt, wie z.B. der Safari, wenn in einer CSS-Datei ein Leerzeichen zuviel steht, passiert schon mal. Aber alle außer dem Firefox? Nach einigem Suchen konnte der Störenfried schließlich ermittelt werden: es war die Joomla-Komponente JCalPro oder besser gesagt ein darin eingetragener Event. Dieser Event war, zusammen mit mehreren anderen, in einer Word-Datei angeliefert worden. Da JCalPro bei der Eingabe der Eventbeschreibung den eingestellten WYSIWYG-Editor benutzt (in diesem Fall den JCE) empfiehlt es sich, beim Rüberkopieren aus einem Word-Dokument die Schaltfläche "Paste as Plain Text" zu verwenden. Bei einem der Einträge habe ich offenbar geschludert und so wurde diverser Word-Formatierungs-Müll in die Eventbeschreibung hineinkopiert. Dummerweise sah man das bei eingeschaltetem WYSIWYG nicht. Erst beim Umschalten in den Text-Modus erschien dann der ganze Müll, der beim Kopieren und Einfügen in die Beschreibung gekommen war:
<!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:HyphenationZone>21</w:HyphenationZone> <w:PunctuationKerning/> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--> <!-- /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} @page Section1 {size:612.0pt 792.0pt; margin:70.85pt 70.85pt 2.0cm 70.85pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} --> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]-->
Während Firefox das ignoriert und die Seite fehlerfrei dargestellt hatte, sind alle anderen Browser mehr oder weniger stark ins Schleudern geraten und hatten die Seite völlig "zerschossen". Nach dem Entfernen war das Problem dann genauso schnell verschwunden wie es gekommen war.