SebastianJu: CSS Arraybezeichner

Hallo,

wie kann man eigentlich im CSS einen Bezeichner im Arrayformat ansprechen.

zB label id="label[4]"?

#label[4] funktioniert nicht.

  1. #label[4] funktioniert nicht.

    weil eckige Klammern nicht zulässig sind in IDs, siehe http://de.selfhtml.org/html/referenz/attribute.htm#id_idref_name@title=ID

    1. Ok, dann geht das nicht. Ich hatte angenommen das funktioniert weil diese Arraybezeichner ja doch nicht unüblich sind.

      1. Ok, dann geht das nicht. Ich hatte angenommen das funktioniert weil diese Arraybezeichner ja doch nicht unüblich sind.

        Darf man fragen, was du überhaupt vor hast?

        ggf. hilft dir ja der Nachfahren- oder der Kind-Selektor weiter ;)

        1. Ich habe es jetzt so gelöst dass die Label label4 heißen. Mittlerweile ist die Typo3-Extension auch fertig.

          Es ging dabei darum einen Fragekatalog anzubieten deren Fragen vom Kunden selbst im Typobackend angepaßt werden können. Und formatiert.

          Der Kunde schreibt dann halt:

          [  ] Mein Garten ist zu klein
                  [  ] Weil ich mehr Haustiere bekommen hab.

          [1-6] So gern pflanze ich Gemüse

          usw.
          Dann wird das Ganze geparst und zB aus [ ] eine Checkbox erstellt. Aus [1-6] eine Selectbox. Zur Auswahl einer Schulnote.
          Und die einzelnen Optionen hießen dann value[1] und immer weiter. Und der dazugehörige Text text[1].
          Danach konnte dann eine Auswertung zusammengefaßt werden die dem Interessenten präsentiert wird und zugleich dem Gartenbauer zugemailt wird. Dieser kann dann den Kunden kontaktieren und hat einen guten Überblick worum es geht.

          Die Arrayform hatte ich einfach gewählt weil es einfach schien diese dann auszuwerten. Theoretisch sollte es aber auch genauso leicht ohne Array funktionieren.

          Allerdings hatte ich angenommen dass die Arrayform verbreitet ist. Besonders weil es bei einigen Formularelementen manchmal genutzt wird einfach mehrere Elemente mit option[] zu benennen aus denen dann ein Array entsteht.

          Na jedenfalls ist das jetzt fertig. Unter der von mir geschätzten Zeit... :)

          1. Hi,

            Allerdings hatte ich angenommen dass die Arrayform verbreitet ist. Besonders weil es bei einigen Formularelementen manchmal genutzt wird einfach mehrere Elemente mit option[] zu benennen aus denen dann ein Array entsteht.

            Im name-Attribut, ja.
            Das ist aber etwas ganz anderes, als das id-Attribut.

            MfG ChrisB

            --
            “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
  2. @@SebastianJu:

    nuqneH

    #label[4] funktioniert nicht.

    Natürlich nicht. '[4]' wäre ein Attributselektor. [CSS2 §5.8] Allerdings ist "4" weder in HTML noch in XML ein gültiger Attributbezeichner und selbst wenn, müsste "4" in CSS escapet werden.

    Werden die eckigen Klammern escapet (#label\[4\]), dann funktioniert es in allen großen Browsern.

    Dennoch: Nicht benutzten, sondern das HTML reparieren!

    Qapla'

    --
    Volumen einer Pizza mit Radius z und Dicke a: pi z z a