Hanno: none überschreibt nicht, warum?

Hallo Ihr lieben,

Ich habe folgendes SS:

.berlin {  
  margin: 1em 1em 1em 0;  
  background: #f9f9f9;  
  border: 1px #AAA solid;  
  border-collapse: collapse;  
  empty-cells:show;  
 }  
  
 .berlin th, .berlin td {  
  border: 1px #AAA solid;  
  padding: 0.3em;  
 }  

Dann habe ich eine Tabelle, in der eine weitere eingeschachtelt ist. Wenn ich jetzt möchte, daß die innere Tabelle weder Padding noch Border hat, füge ich bei jener ein:
   <table style="margin: 0pt; padding: 0px; empty-cells: show; border-style: none; border-collapse: collapse; width: 100%;">,
doch Padding und Border bleiben, auch dann, wenn ich deren Werte mit !important priorisiere.

Wenn ich allerdings
   <table style="margin: 0pt; padding: 0px; empty-cells: show; border-style: dotted; border-collapse: collapse; width: 100%;">
notiere, dann wird der Rahmen gepunktet.

Warum kann ich die vererbten Attribute nicht überschreiben außer mit dotted?

Ganz herzlichen Dank und noch einen schönen SONNtag :-)
Hanno

  1. Hi,

    <table style="margin: 0pt; padding: 0px; empty-cells: show; border-style: none; border-collapse: collapse; width: 100%;">,

    verzichte auf Inline-Styles.

    doch Padding und Border bleiben, auch dann, wenn ich deren Werte mit !important priorisiere.

    Überlege Dir, warum es "important" heißt, nicht "override".

    Warum kann ich die vererbten Attribute nicht überschreiben außer mit dotted?

    Die Werte werden nicht vererbt. Und ob irgend welche <th>- und <td>-Elemente einen Rahmen besitzen, ist dem Rahmen eines <table>-Elements auch egal.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo Cheatah,

      <table style="margin: 0pt; padding: 0px; empty-cells: show; border-style: none; border-collapse: collapse; width: 100%;">,

      verzichte auf Inline-Styles.

      Geht nicht, da der Code letztlich in die Wikipedia soll, und Änderungen am css dort erst dann akzeptiert werden, wenn sich das Layout optisch bewährt hat. Andere machen es auch so, es sollte also eine Lösung geben.

      doch Padding und Border bleiben, auch dann, wenn ich deren Werte mit !important priorisiere.

      Überlege Dir, warum es "important" heißt, nicht "override".

      Ich komm' nicht drauf. Unter http://de.selfhtml.org/navigation/suche/index.htm?Suchanfrage=cell-collapse heißt es: "Mit !important ausgezeichnete Deklarationen überschreiben gleichlautende ohne diese Kennzeichnung."

      Der Unterschied zwischen "override" und "überschreiben" erscheint mir hier zu spitzfindig, als daß ich jetzt daran erkennen können soll, warum das hier nicht klappt. Sei doch so gut, und sag es mir :-)

      Warum kann ich die vererbten Attribute nicht überschreiben außer mit dotted?

      Die Werte werden nicht vererbt. Und ob irgend welche <th>- und <td>-Elemente einen Rahmen besitzen, ist dem Rahmen eines <table>-Elements auch egal.

      Na, das beantwortet meine Frage aber nun überhaupt nicht. Neben "dotted" reagiert die innere Tabelle übrigens auch auf "hidden". Warum aber nur "none" dem Rahmen eines <table>-Elements egal ist, ist durch Deine Ausführung nicht klar geworden. Bedenke: Ich WEISS es nicht, darum frag ich ja. Sicher ist die Erklärung logisch und sinnvoll, aber wenn ich sie wüßte, würde ich ja nicht fragen. Also mach es doch bitte etwas weniger erzieherisch, hmmm? :-)

      Beste Grüße
      Hanno

      1. Hi,

        Überlege Dir, warum es "important" heißt, nicht "override".
        Ich komm' nicht drauf.

        Schritt 1: Übersetze die beiden Begriffe.

        Der Unterschied zwischen "override" und "überschreiben" erscheint mir hier zu spitzfindig,

        Der Unterschied zwischen "override" und "important" auch?

        als daß ich jetzt daran erkennen können soll, warum das hier nicht klappt.

        Selbst wenn es "override" hieße, wäre Dein Problem unverändert.

        Die Werte werden nicht vererbt. Und ob irgend welche <th>- und <td>-Elemente einen Rahmen besitzen, ist dem Rahmen eines <table>-Elements auch egal.
        Na, das beantwortet meine Frage aber nun überhaupt nicht.

        Dann hast Du meine Antwort nicht verstanden.

        Neben "dotted" reagiert die innere Tabelle übrigens auch auf "hidden". Warum aber nur "none" dem Rahmen eines <table>-Elements egal ist, ist durch Deine Ausführung nicht klar geworden.

        "none" im Rahmen eines <table>-Elements ist dem Rahmen eines <th>- oder <td>-Elements egal.

        Also mach es doch bitte etwas weniger erzieherisch, hmmm? :-)

        Pff! Das kann doch jeder ;-)

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
  2. Hi!

    Dann habe ich eine Tabelle, in der eine weitere eingeschachtelt ist. Wenn ich jetzt möchte, daß die innere Tabelle weder Padding noch Border hat, füge ich bei jener ein:

    Da sich das CSS vom table-Element wie bereits festgestellt nicht auf dessen th und td überträgt, und du sicher nicht jedes th/td einzeln formatieren willst, bleibt dir nur, die weiterhin vorhandenen Attribute border und cellpadding vom table-Element zu nutzen.

    Lo!