D.: Class: Ausnahme definieren

Hallo!

Ich habe in meiner CSS-Datei Daten angegeben, die allgemein für <p>-Abschnitte in einer HTML-Dabei gelten. Das ist auch für 99% der Abschnitte gültig, nur an einer Stelle möchte ich gar keine CSS-Gestaltung. Muss man dann bei allen eine spezielle Klasse anlegen oder kann man diesen einen Abschnitt irgendwie als Ausnahme definieren?

Danke!

  1. Ich habe in meiner CSS-Datei Daten angegeben, die allgemein für <p>-Abschnitte in einer HTML-Dabei gelten. Das ist auch für 99% der Abschnitte gültig, nur an einer Stelle möchte ich gar keine CSS-Gestaltung. Muss man dann bei allen eine spezielle Klasse anlegen oder kann man diesen einen Abschnitt irgendwie als Ausnahme definieren?

    Das kommt doch aufs Gleiche raus. Entweder gibst du den vielen <p> eine eigene Klasse oder du gibst dem einzelnen <p> eine eigene Klasse. Letzteres ist allerdings schneller erledigt.

    1. Okay, aber wie lege ich da eien Klasse an, die keine Formatierung macht?

      p.none {}; ?
      Das funktioniert nicht, da greift er auf die normale p-Klasse zurück.

      1. Hallo,

        Okay, aber wie lege ich da eien Klasse an, die keine Formatierung macht?

        p.none {}; ?
        Das funktioniert nicht, da greift er auf die normale p-Klasse zurück.

        welche CSS-Eigenschaften hast Du allen P-Elementen zugeordnet? Kannst Du uns
        mal einen Link zu der Seite geben, vielleicht gibt es ja aufgrund des Aufbaus
        eine Möglichkeit, wie man die zu formatierenden P-Elemente ansprechen kann,
        die aber bei dem einen P-Element nicht greift.

        Viele Grüße,
        Stefan

        1. Hallo!

          p { font-family:Verdana, Tahoma, Arial, sans-serif; font-size:10pt; }

          Das ist der p-Tag für alle.

          Meine Situation sieht so aus: Ich habe ein Forum, das ich includen möchte. Bzw. ich habe das Layout in zwei Teile geteilt und das obere über und das untere unter das Forum included, sodass das eingebettet ist. Das Problem: oben schließt mit <p>, unten beginnt mit </p>. Entsprechend steht das Forum jetzt in einem Absatz. Und er übernimmt die Daten der CSS-Datei, die Absätze formatieren. Das will ich aber nicht, weil das Forum seine eigene CSS-Datei und sein eigenes Layout hat.

          Ich hoffe ich konnte es gut genug beschreiben. Die Seite kann ich leider nicht posten, da sie ein sehr privates Thema hat.

          1. Hallo

            p { font-family:Verdana, Tahoma, Arial, sans-serif; font-size:10pt; }

            Das ist der p-Tag für alle.

            Die Verwendung von "pt" als Maßeinheit ist am bzw. für den Bildschirm eine schlechte Wahl. Benutze stattdessen "px" oder besser "em". "pt" wäre für ein Druckstylesheet die erste Wahl.

            Meine Situation sieht so aus: Ich habe ein Forum, das ich includen möchte. Bzw. ich habe das Layout in zwei Teile geteilt und das obere über und das untere unter das Forum included, sodass das eingebettet ist. Das Problem: oben schließt mit <p>, unten beginnt mit </p>. Entsprechend steht das Forum jetzt in einem Absatz. Und er übernimmt die Daten der CSS-Datei, die Absätze formatieren. Das will ich aber nicht, weil das Forum seine eigene CSS-Datei und sein eigenes Layout hat.

            Da deine Angaben für _alle_ Textabsätze gelten, musst du denen, die von diesen Regeln ausgenommen sein sollen, andere Regeln zuweisen. Für Absätze der Klasse "xyz" musst du also die nicht gewünschten Regeln explizit überschreiben.

            Ein anderer Ansatz wäre, die Bestandteile der Seite per <div> zu gruppieren.

            <div id="header">  
             <h1>...</h1>  
             <p>...</p>  
            </div>  
            <div id="content">  
             <h2>...</h2>  
             <p>...</p>  
             <p>...</p>  
             <p>...</p>  
            </div>  
            <div id="forum">  
             <p>...</p>  
            </div>
            

            Damit kannst du die Absätze und sonstigen Elemente als Kindelemente der <div>s ansprechen und formatieren.

            #header p {  
            font-size:1.5em;  
            }  
            #content p,#forum p {  
            font-size:1em;  
            }  
            #header p,#content p {  
            font-family:sans-serif;  
            }  
            #forum p {  
            font-family:monospace;  
            }
            

            Die Schriftgröße des Absatzes in #header ist eineinhalbmal so groß wie im Rest der Seite, wird aber mit der gleichen Schriftfamilie dargestellt, wie die Absätze in #content. Der Absatz von #forum hat demgegenüber eine andere Schriftfamilie, diktengleiche Schrift, wie sie standardmäßig auch in diesem Forum für die Postingtexte verwandt wird.

            Ich hoffe, das System ist klar beschrieben. Vielleicht hilft dir das ja bei der eventuellen Überarbeitung der Seitenstruktur.

            Tschö, Auge

            --
            Die deutschen Interessen werden am Liechtenstein verteidigt.
            Veranstaltungsdatenbank Vdb 0.2
          2. Hi,

            Meine Situation sieht so aus: Ich habe ein Forum, das ich includen möchte. Bzw. ich habe das Layout in zwei Teile geteilt und das obere über und das untere unter das Forum included, sodass das eingebettet ist. Das Problem: oben schließt mit <p>, unten beginnt mit </p>.

            Das Forum enthält keinerlei Block-Elemente?
            Denn in einem p-Element dürfen nur inline-Elemente enthalten sein.

            Schließe das Forum in ein geeigneteres Element ein (z.B. div), welches auch block-Elemente enthalten darf.
            Damit löst sich dann auch gleich Dein CSS-Problem.

            cu,
            Andreas

            --
            Warum nennt sich Andreas hier MudGuard?
            O o ostern ...
            Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      2. Hi,

        Okay, aber wie lege ich da eien Klasse an, die keine Formatierung macht?

        So zum Beispiel:

        p.none {}; ?

        Das funktioniert nicht, da greift er auf die normale p-Klasse zurück.

        Natuerlich.

        Wenn du Formatierungen wieder "aufheben" willst, dann musst du fuer alle entsprechenden Eigenschaften die Defaultwerte explizit wieder setzen.

        MfG ChrisB

  2. Mir ist ein kleiner Fehler unterlaufen. Da ich mein Layout auf Tabellen ausgelegt habe (ich weiß, geht auch anders, aber damit kenne ich mich nicht gut aus). Das ganze liegt im <td>-Tag. Sprich: Nicht p, sondern td. Wie geh ich dann vor? Weil in den td-Block ein div reinzuschreiben, hat bei mir keine Auswirkungen.

    1. Hallo,

      Mir ist ein kleiner Fehler unterlaufen. Da ich mein Layout auf Tabellen ausgelegt habe (ich weiß, geht auch anders, aber damit kenne ich mich nicht gut aus). Das ganze liegt im <td>-Tag. Sprich: Nicht p, sondern td. Wie geh ich dann vor? Weil in den td-Block ein div reinzuschreiben, hat bei mir keine Auswirkungen.

      td.spezial p { ... }

      Viele Grüße,
      Stefan