Tobias S.: CSS-Styles gezielt in HTML-Bereichen verwenden

Hallo zusammen!

Seit einiger Zeit entwickle ich ein WCMS, das modular Inhalte aus verschiedenen PHP- und HTML-Dateien integriert. Das System unterteilt dabei die gesamte Website in mehrere Sektoren, wobei jeder Sektor Inhalte gleichen Formats beherbergt.
Ein Sektor ist z.B. der "Hauptbereich", dessen Inhalt über ein Hauptmenü ansteuerbar ist. Weitere Sektoren sind die "Fußleiste" oder eine zusätzliche Spalte mit weiteren Informationen am linken Rand der Website. Die Beispiele sind zufällig gewählt, da die Sektoren beliebig definierbar sind.

Mein Ziel ist es nun, für jeden Sektor eine eigene CSS-Datei zur Verfügung zu stellen. Alle Inhalts-Dateien, die in einen Sektor eingebettet werden, sollen von der gleichen CSS-Datei formatiert werden.
Mein Problem besteht nun darin, dass das System (alles in allem) nur eine einzige HTML-Datei erzeugt, die alle Sektoren enthält. Wie schaffe ich es, die Sektoren in dieser HTML-Datei derart zu kennzeichnen, dass die jeweiligen CSS-Dateien, die ich im Kopf der HTML-Datei einbinde, ihre Styles nur auf "ihre" Sektoren anwenden?

Ein Ansatz findet sich unter http://de.selfhtml.org/css/formate/zentrale.htm#attributbedingte (Attributbedingt Formate definieren). Ich könnte die Sektoren mit <span id='xy'>sektor</span> umschließen und attributbedingte Formate darauf anwenden. Doch leider beherrscht der IE diese Art der Style-Vergabe nicht. Auch Individualformate (unter http://de.selfhtml.org/css/formate/zentrale.htm#individualformate) sind keine Lösung, da sie nur ein einzelnes Element formatieren.

Ich suche eine Lösung, die möglichst überall funktioniert. Wer hat eine Idee?

Viele Grüße und vielen Dank,
Tobias

  1. Hi,

    Ein Ansatz findet sich unter http://de.selfhtml.org/css/formate/zentrale.htm#attributbedingte (Attributbedingt Formate definieren). Ich könnte die Sektoren mit <span id='xy'>sektor</span> umschließen

    Nein, könntest Du nicht - oder enthalten Deine Abschnitte ausschließlich inline-Elemente.

    Auch Individualformate (unter http://de.selfhtml.org/css/formate/zentrale.htm#individualformate) sind keine Lösung

    doch! In Verbindung mit Nachfahrenselektoren sehr wohl.
    #sektion1 * { /* selektiert sämtliche Elemente innerhalb des Elements mit dieser ID */ }

    freundliche Grüße
    Ingo

    1. Hi,

      Auch Individualformate (unter http://de.selfhtml.org/css/formate/zentrale.htm#individualformate) sind keine Lösung
      doch! In Verbindung mit Nachfahrenselektoren sehr wohl.
      #sektion1 * { /* selektiert sämtliche Elemente innerhalb des Elements mit dieser ID */ }

      freundliche Grüße
      Ingo

      ja, du hast Recht. Mir war nicht bekannt, dass man Individualformate weiter verschachteln kann. Danke für den Tipp! Problem gelöst!  :-)