Gunnar Bittersmann: Regel in CSS Klasse ändern

Beitrag lesen

@@Blumentopf

Im Allgemeinen ist es nicht die beste Idee, alle Sprachvarianten auf eine Seite zu packen und nur jeweils eine davon anzuzeigen. Unnütz übertragene Daten.

Bezüglich der Frage, ob es sinnvoll ist, beide verwendeten Sprachen in einem Dokument unterzubringen, möchte ich ergänzen, dass die Seite nur sehr wenig Text enthält, und ich es daher für effiezienter halte, das alles einzubinden, als Seiten neu zu laden.

In deinem speziellen Fall kann das aber durchaus der gangbare Weg sein.

Bleibt aber dennoch die Frage: warum? Warum sollten Nutzer die Sprache umschalten wollen, wenn sie die Seite von vornherein in ihrer bevorzugten Sprache angezeigt bekommen? (d.h. in der Sprache, die ihr Browser als ihre bevorzugte angibt) Denn das sollten sie.

Die Ressouce sollte also schon vom Server mit einer Markierung ausgeliefert werden, welche Sprache die für den jeweiligen Nutzer die (vermeintlich) passende ist. Bspw. <html lang="de"> vs. <html lang="en">. Die jeweils passende Sprache ermittelt ein serverseitiges Script anhand des Accept-Language-Headers bzw. eines evtl. gesetzten Cookies (wobei dieser dann Vorrang hat).

Sollte die automatisch ermittelte Sprache nicht die gewünschte sein, kann der Nutzer umschalten. Dabei könnte per JavaScript das lang-Attribut des html-Elements geändert werden und ein Cookie gesetzt bzw. überschrieben werden. (Den Nutzer fragen, ob er das will?) Durch das geänderte lang-Attribut greifen andere Selektoren und die Sichtbarkeit von Textbereichen wird entsprechend umgeschaltet.

Probleme dabei:

  1. Die Umschaltung müsste assistiven Technologien per ARIA-Attributen mitgeteilt werden, damit auch Screenreader-Nutzer in den Genuss der Sprachumschaltung kommen.

  2. Ohne JavaScript geht die Sprachumschaltung nicht. Lässt sich so lösen, dass man die Ressource nochmals vom Server holt – mit einem Parameter ?lang=… im URI, der Vorrang vor Cookie und Accept-Language-Header hat.

LLAP 🖖

--
“You might believe there are benefits for the developer, but first of all, you should put those behind the interest of the user.” —Stefan Tilkov
Selfcode: sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|
0 49

Regel in CSS Klasse ändern

Blumentopf
  • css
  • javascript
  1. 1
    Auge
    1. 0
      Gunnar Bittersmann
  2. 0
    Matthias Apsel
    • css
    • jsp
    1. 0
      Auge
      • css
      • javascript
      1. 0
        Matthias Apsel
        1. 0
          Auge
          • sprache
    2. 0
      Matthias Apsel
      1. 0
        Gunnar Bittersmann
        • css
        1. 0
          Matthias Apsel
          1. 0
            Gunnar Bittersmann
  3. 0
    Blumentopf
    1. 0
      Auge
      • css
      • html
      • javascript
      1. 0
        Blumentopf
        1. 0
          Auge
          1. 0
            Blumentopf
            1. 0
              Matthias Apsel
            2. 0
              Auge
              1. 0
                Blumentopf
              2. 0
                Orlok
                1. 0
                  Auge
                  1. 0

                    "Funktion" im Alltag

                    Der Martin
                    • sonstiges
                    1. 0
                      Auge
                      • menschelei
                      • sonstiges
                      1. 0
                        Der Martin
                        1. 0
                          Auge
                          1. 0
                            Der Martin
                    2. 0
                      Tabellenkalk
                      1. 0
                        Der Martin
                    3. 0
                      Der Martin
                      1. 1
                        JürgenB
                        • menschelei
                        • sonstiges
                        1. 0
                          Der Martin
                          1. 0
                            JürgenB
                            1. 0
                              Der Martin
                  2. 4

                    Arraymethoden und anonyme Funktionen

                    Orlok
                    • javascript
                  3. 2

                    const let var

                    Orlok
                    • javascript
                    1. 3
                      Orlok
                    2. 0
                      Auge
                      1. 1

                        Konstanten

                        Orlok
                        • javascript
                        • php
                        1. 0
                          Auge
    2. 0
      Gunnar Bittersmann
      • css
      • internationalisierung
      • javascript
      1. 0
        Gunnar Bittersmann
      2. 0
        Blumentopf
        1. 0
          Der Martin
          1. 0
            Blumentopf
            1. 0
              Der Martin
        2. 0
          Matthias Apsel
          1. 0
            Blumentopf
            1. 0
              Matthias Apsel
        3. 0
          Gunnar Bittersmann