Eddie: Überladen von class-Angaben per "style=..."

Hallo allerseits,

gibt es irgendwelche Einwände gegen folgende Notation?

=====================
xyz.normalStyle
{
   myValue:normal;
}

<xyz class="normalStyle" style="myValue:spezial;">

Ich ueberschreibe also die eigentlich vorgegebenen Eigenschaften. Das funktioniert auch mit den von mir verwendeten Browsern ganz wunderbar.

Also die Frage: gibt es irgendwelche Einwände gegen diese Methode?

Danke Euch,
Eddie

---------------------

[Und ja, ich weiß, dass das kein guter Stil ist, aber ich wuerde mir eine Menge Arbeit damit sparen.]

[Und um die garantiert kommende Frage gleich zu beantworten: weil ich das Ganze dynamisch aus Templates erzeuge und nur ganz selten einen Sonderfall habe, den ich nicht in meinem Programmcode abfangen will.]

  1. Hallo,

    Also die Frage: gibt es irgendwelche Einwände gegen diese Methode?

    Nachdem das erlaubt ist, kannst du das auch machen, also: keine.

    Grüße
    Thomas

  2. hallo ebenfalls,

    gibt es irgendwelche Einwände gegen folgende Notation?

    Ja.

    xyz.normalStyle
    {
       myValue:normal;
    }

    Kann man nicht machen, weil es ein Tag "xyz" nicht gibt. Möglich wäre:
      .normalStyle { myValue:normal }

    <xyz class="normalStyle" style="myValue:spezial;">

    Ist unwirksam und völlig unsinnig. Du hast vorhin mit der CSS nix "überschrieben", sondern nur eine Subklasse definiert, es würde also
      <p class="normalStyle">
    völlig ausreichen. Ein Tag <xyz> gibt es eh nicht.

    Du scheinst da etwas, was aus der JAVA-Programmierung stammen könnte, begrifflich mit CSS durcheinanderzuwerfen.

    Grüße aus Berlin

    Christoph S.

    1. Hallo Christoph,

      gibt es irgendwelche Einwände gegen folgende Notation?
      Ja.

      Sorry, aber du stehst auf der Leitung. (ps: wink zu deinem unfreundlich thread)

      Kann man nicht machen, weil es ein Tag "xyz" nicht gibt.

      Abstraktion ist eine Kunst. ;-)

      Wäre es dir so leichter? :

      p.normalStyle
      {
         color:black;
      }

      <p class="normalStyle" style="color:red;">

      wobei er hier  mit xyz ein beliebiges HTML-Element, mit myValue eine beliebige CSS-Eigenschaft, mit normal einen Wert der normalerweise und mit spezial einen Wert der im besonderen Fällen  verwendet wird gemeint hat.

      Grüße
      Thomas

      1. Hallo,

        gibt es irgendwelche Einwände gegen folgende Notation?
        Ja.

        Sorry, aber du stehst auf der Leitung.

        Vielleicht hat Christoph einfach etwas zu viel Holunderwein getrunken?

        Gruß,

        MI

        --
        XFrames Working Draft (Deutsche Übersetzung) : http://jendryschik.de/TR/xframes/
        Die Wissensgesellschaft : http://jendryschik.de/michael/inf/wissensgesellschaft/
        Einführung in XHTML, CSS und Webdesign: http://jendryschik.de/wsdev/einfuehrung/
        Feste Positionierung, richtig angewandt : http://jendryschik.de/wsdev/css/fixed/
        sh:( fo:) rl:( br:& br:] ' n4:& | n4:? ' ie:| va:) de:] zu:) fl:{ ss:| ls:& js:|
    2. hi!

      xyz.normalStyle
      {
         myValue:normal;
      }
      Kann man nicht machen, weil es ein Tag "xyz" nicht gibt.

      Hast du schonmal was von XML gehört?

      Du scheinst da etwas, was aus der JAVA-Programmierung stammen
      könnte, begrifflich mit CSS durcheinanderzuwerfen.

      Unfug.

      bye, Frank!

      --
      Never argue with an idiot. He will lower you to his level and then
      beat you with experience.
      1. hallo Frank,

        Hast du schonmal was von XML gehört?

        Ja, gelegentlich.

        Du scheinst da etwas, was aus der JAVA-Programmierung stammen
        könnte, begrifflich mit CSS durcheinanderzuwerfen.
        Unfug.

        Wieso?

        Christoph S.

    3. Hi,

      gibt es irgendwelche Einwände gegen folgende Notation?
      Ja.
      xyz.normalStyle
      {
         myValue:normal;
      }
      Kann man nicht machen, weil es ein Tag "xyz" nicht gibt. Möglich wäre:
        .normalStyle { myValue:normal }

      1. hat CSS nichts mit tags zu tun, sondern mit Elementen.
      2. CSS ist nicht auf die Verwendung mit HTML eingeschränkt, es kann auch auf XML angewendet werden. CSS ist (theoretisch) noch nichtmal auf SGML-Sprachen beschränkt - es sollte nur eine Sprache sein, die Elemente und Attribute usw. kennt, denn darauf sind die Selektoren ausgelegt.
      3. In XML ist es durchaus denkbar, daß es ein xyz-Element gibt.
      4. Wenn Du schon nicht verstehst, daß es hier um eine abstrahiertes Beispiel geht und Du außerdem nur HTML-Elemente erlaubst, hättest Du konsequenterweise auch anmeckern müssen, daß es in CSS keine Property namens myValue gibt.

      <xyz class="normalStyle" style="myValue:spezial;">
      Ist unwirksam und völlig unsinnig. Du hast vorhin mit der CSS nix "überschrieben", sondern nur eine Subklasse definiert, es würde also
        <p class="normalStyle">
      völlig ausreichen. Ein Tag <xyz> gibt es eh nicht.

      Du solltest Deine CSS-Kenntnisse nochmal aufbessern, insbesondere, was die Kaskade angeht.

      Du scheinst da etwas, was aus der JAVA-Programmierung stammen könnte, begrifflich mit CSS durcheinanderzuwerfen.

      Du scheinst da etwas von CSS nicht kapiert zu haben...

      cu,
      Andreas

      --
      Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
      http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
    4. Hallo Christoph,

      Du scheinst da etwas, was aus der JAVA-Programmierung stammen könnte,
      begrifflich mit CSS durcheinanderzuwerfen.

      Nö. Wenn Du mal hier guckst...

      http://www.w3.org/TR/REC-CSS2/cascade.html#specificity

      ... dann steht dort im letzten Absatz eindeutig der Begriff »overwrite«,
      also überschreiben. Das Konzept »Überladen« oder zumindest der Begriff
      ist hier falsch am Platz, aber das Konzept »Überschreiben« gibt in CSS
      auf jeden Fall. Es bedeutet schlichtweg, daß beim auftreten zweier
      verschiedener CSS-Regeln auf ein Element das mit der größeren Wertigkeit
      gewinnt und das andere überschreit.

      Ich tippe auf den Holunderwein. :-)

      • Tim
      --
      <img src="http://validator.w3.org/images/v15445" border="0" alt="">
      1. Ich tippe auf den Holunderwein. :-)

        Sag ich doch!

        Gruß,

        MI

        --
        XFrames Working Draft (Deutsche Übersetzung) : http://jendryschik.de/TR/xframes/
        Die Wissensgesellschaft : http://jendryschik.de/michael/inf/wissensgesellschaft/
        Einführung in XHTML, CSS und Webdesign: http://jendryschik.de/wsdev/einfuehrung/
        Feste Positionierung, richtig angewandt : http://jendryschik.de/wsdev/css/fixed/
        sh:( fo:) rl:( br:& br:] ' n4:& | n4:? ' ie:| va:) de:] zu:) fl:{ ss:| ls:& js:|
  3. hi!

    Also die Frage: gibt es irgendwelche Einwände gegen diese Methode?
    [Und ja, ich weiß, dass das kein guter Stil ist, aber ich wuerde mir
    eine Menge Arbeit damit sparen.]

    Es gibt keine Einwände. Und es ist auch kein schlechter Stil, denn
    genau das ist der Sinn von CSS. Das ist übrigens auch der Grund, warum
    sie _Cascading_ Style Sheets heißen: in einer Kaskade werden die
    verschiedenen Selektoren von allgemein zu konkret durchlaufen, wobei
    jeweils die Style-Angaben angewendet werden [1].

    [1] http://www.w3.org/TR/REC-CSS2/cascade.html#cascade

    bye, Frank!

    --
    Never argue with an idiot. He will lower you to his level and then
    beat you with experience.