muhrad: Regulärer Ausdruck zum Ansprechen mehrerer IDs

Hi,

ich habe aktuell folgendes Problem:
Ich würde einen entsprechenden Stylesheet-Eintrag gerne auf einen Schlag mehrere gleichartige Elemente ansprechen. in etwa so:

#sub-tree-item-*-main { ... } \

Die Elemente heißen alle fast gleich, haben an der mit * markierten Stelle eine (nicht fortlaufende) Nummer stehen. Auf diese habe ich keinen Einfluss, da (im Zweifel zur Laufzeit) generiert.

Gibt es eine Möglichkeit hier per RegEx den Stylesheet-Eintrag so aufzubauen, dass er alle der obigen Maske entsprechenden Elemente erwischt?

Habe gerade 'ne knappe Stunde Google-Suche hinter mir, stoße aber leider ausschließlich auf Reguläre Ausdrücke zum Auslesen von CSS. Hat mit meinem Problem leider wenig zu tun.

Gruß & Danke!

muhrad

  1. Hi,

    reguläre Ausdrücke in CSS-Selektoren gehen AFAIK nicht.

    Warum gibst du gleichartigen Elementen nicht eine gemeinsame Klasse?
    Wäre IMHO die richtige Lösung.

    Falls dir die richtige Lösung nicht gefällt kannst du evtl. etwas mit Attributs-Selektoren anfangen.

    ~dave

  2. Hi,

    #sub-tree-item-*-main { ... } \

    Die Elemente heißen alle fast gleich, haben an der mit * markierten Stelle eine (nicht fortlaufende) Nummer stehen. Auf diese habe ich keinen Einfluss, da (im Zweifel zur Laufzeit) generiert.

    Gibt es eine Möglichkeit hier per RegEx den Stylesheet-Eintrag so aufzubauen, dass er alle der obigen Maske entsprechenden Elemente erwischt?

    M.W. nein.
    Über substring matching attribute selectors kannst du zwar auch auf den Inhalt des ID-Attributes Bezug nehmen – aber die bieten nur Möglichkeiten, Prä-, Suf- oder Infixe abzubilden.
    „Richtige“ Reguläre Ausdrücke kannst du an der Stelle aber nicht nutzen.

    Ich würde einen entsprechenden Stylesheet-Eintrag gerne auf einen Schlag mehrere gleichartige Elemente ansprechen.

    Und eine Kombination aus Nachfahren- und Elementselektor o.ä. dafür zu benutzen, gibt die Dokumentstruktur nicht her?

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Hi,

      #sub-tree-item-*-main { ... } \

      Über substring matching attribute selectors kannst du zwar auch auf den Inhalt des ID-Attributes Bezug nehmen – aber die bieten nur Möglichkeiten, Prä-, Suf- oder Infixe abzubilden.

      Wobei, wenn es keine anderen Elemente gibt, deren ID ebenfalls mit #sub-tree-item- beginnt – dann würde der Bzug auf dieses Präfix ja auch ausreichen.

      MfG ChrisB

      --
      RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      1. Hi,

        Wobei, wenn es keine anderen Elemente gibt, deren ID ebenfalls mit #sub-tree-item- beginnt – dann würde der Bzug auf dieses Präfix ja auch ausreichen.

        Und wenn es auch kein anderes Element gibt, dass die ID "sub-tree-item" hat – dann kannst du auch [att|=val] benutzen, der war schon in CSS 2.1 definiert, was vielleicht(?) etwas breitere Unterstützung bedeutet.

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      2. @@ChrisB:

        nuqneH

        #sub-tree-item-*-main { ... } \ Wobei, wenn es keine anderen Elemente gibt, deren ID ebenfalls mit #sub-tree-item- beginnt – dann würde der Bzug auf dieses Präfix ja auch ausreichen.

        Zumal man ja auch zusätzlich das Suffix "-main" abfragen kann.

        Qapla'

        --
        Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
        (Mark Twain)
  3. Hallo muhrad!

    Eventuell hilft dir auch das weiter.

    Uwe