Anmeldungsdatum: 08.12.2009
Beiträge: 923
Wohnort: Berlin
Da es nun raus ist, hier nochmal in common: Wer Spoiler ausblenden möchte und JavaScript nicht hasst, kann ab sofort bei Postings die [spoiler]xyzzy[/spoiler] BBCode-Tags verwenden. Sie sind jetzt auch in der BBCode-Doku enthalten. _________________ interactive fiction database
Lieber Forengott, wie einfach ist es denn, das Theme hier zu ändern, wenn wir schon mal dabei sind. Kommt mir immer so wie ein Nightmare On Elm Street-Forum vor... _________________ www.duke-itch.com
Anmeldungsdatum: 08.12.2009
Beiträge: 923
Wohnort: Berlin
Unter Profil->Board-Style können vier Themes gewählt werden. Dieser Mod ist aber bislang nur im ifzentrale-Theme drinne, wird (vielleicht) am Wochenende upgedated. _________________ interactive fiction database
Anmeldungsdatum: 08.12.2009
Beiträge: 923
Wohnort: Berlin
Update: Nach Hannes berechtigter Kritik ist die Spoilerfunktion nun dahingehend überarbeitet, dass Browser mit oder ohne JavaScript jeweils eigene Darstellungen erhalten. Ohne JS wird einfach der Spoiler hell auf hell dargestellt und der Aufklapp-Link weggelassen. Wenn Elemente außerhalb der Standard-Textfarbe gespoilert werden (z.B. URLs, IMGs oder farbig markierter Text), sind diese in Nicht-JS-Browsern also immer gleich sichtbar. Daher sollte davon abgesehen werden. _________________ interactive fiction database
Mit der jetzigen Loesung kann ich absolut leben. Um trotzdem noch kurz auf deine Frage zur Asymmetritaet einzugehen:
Wir sprechen hier von zwei Vorgaengen:
1. Ausblenden (verstecken)
2. Einblenden
In der initialen Variante (die eben auch in diesem dadurch unbenutzbaren englischen Forum verwendet wird), werden diese nicht mit den gleiche Technologiekombinationen vorgenommen ("asymmetrisch"). Naemlich:
1. durch CSS ("spoiler"-Klasse im statischen Stylesheet als unsichtbar deklariert)
2. durch eine Kombination von CSS und Javascript (letzteres aendert dynamisch die Deklaration ersterem)
Nun sind folgende Clientkonfigurationen denkbar (abgesehen von den Problemen sehbehinderter Menschen mit clientseitig ausgeloesten Aenderungen am Inhalt per Javascript):
a) Kein Support fuer Javascript und CSS
b) Support fuer CSS, aber keiner fuer Javascript
c) Support fuer Javascript, aber keiner fuer CSS
d) Support fuer Javascript und CSS
Bewertung (in Klammern jeweils 0 fuer "keine Aenderung durch Einfuehrung des Spoilertags", 1 fuer "Verbesserung" und -1 fuer "Verschlechterung"):
a) kein Problem, da alles von vornherein sichtbar ist (kein Mehrwert durch Spoilerfunktion, aber auch kein Schaden) (0)
b) Problem, da 1. funktioniert, aber 2. nicht - der Inhalt bleibt also unwiderruflich ausgeblendet. (-1)
c) kein Problem, da 1. und 2. gleichermassen fehlschlagen (entspricht also a) (0)
d) kein Problem, da 1 und 2 klappen (1)
Im Fall b) fuehrt diese Implementierung also zu einem nicht loesbaren Problem; sinnvollen Teilnahme an der Diskussion ist nicht mehr moeglich und eine Vermeidung (d.h. Nichtverwendung der Spoilerfunktion) liegt nicht in der eigenen Hand.
Symmetrisch waere es sauber folgendermassen:
11. Ausblendung durch Javascript und CSS: Das visibility/display-Attribut des CSS-Standards wird fuer die Spoilerklasse nicht statisch deklariert, sondern beim Laden der Seite dynamisch per Javascript.
22. Wie 2.
Mag sich erstmal unlogisch anhoeren, da die Anforderungen an den Client sogar steigen, aber wenn man wieder die vier Faelle durchgeht:
aa) nichts wird Aus- oder Eingeblendet (0)
bb) nichts wird Aus- oder Eingeblendet (0)
cc) nichts wird Aus- oder Eingeblendet (0)
dd) Aus- und Einblendung funktionieren gleichermassen (1)
Die Summe aus a-d ist also 0, da in einem Fall eine Verbesserung, in einem Fall eine Verschlechterung und in zwei Faellen keine Aenderung. Die Summe aus aa-dd ist jedoch 1, da dreimal keine Aenderung, eine Verbesserung und keine Verschlechterung. Waehrend also viele einen Mehrwert haben, muss niemand darunter leiden. Was bei a-d anders ist: Dort werden zwei Gruppen gegeneinander aufgewogen.
Das Schoene an einer solchen Metrik ist, dass die Ueberlegung, wer in der "Mehrzahl" ist, unerheblich ist. Auch wenn man beispielsweise Gruppe d mit einem Gewichtsfaktor von 100000 versieht, bleibt die Bilanz bei der zweiten technischen Variante besser.
Machte man eine entsprechende Auswertung fuer die jetzt implementierte Variante, wuerde die evtl. noch besser ausfallen, aber das ueberlasse ich jetzt mal Jedem selbst ;)
Fazit: Fuer beide Schritte gleiche Technologie verwenden ("symmetrisch arbeiten") und man hat nie Probleme. Es hilft dann zwar nicht Jedem, aber es schadet auch Niemandem --> automatisch positive Bilanz.
Anmeldungsdatum: 08.12.2009
Beiträge: 923
Wohnort: Berlin
Vielen Dank für die ausführliche Antwort, das habe ich schon vermutet und entsprechend angepasst, allerdings mit Kompromissen. Dieses Forum hat zwei Nachteile: 1. muss es dringend "geupdated" werden, was so gar nicht mehr genannt werden kann da die Software hoffnungslos veraltet ist. Ein Upgrade ist schlichtweg nicht möglich, die Daten müssten von Hand in eine neue Forumssoftware konvertiert und vermutlich auch noch in UTF-8 gewandelt werden. Jede in Änderungen dieses Systems investierte Stunde ist eine verlorene, da diese Migration zwangsläufig kommen wird - spätestens, wenn Mo's Provider PHP4 abstellt. 2. ist es nicht ohne weiteres möglich, im BBCode-Handling auf übergeordnete Informationen über den handzuhabenden BB-kodierten Textfetzen hinaus zuzugreifen und umgekehrt übergeordnete Einstellungen (onLoad, CSS) zu beeinflussen. Und das ist notwendig, sonst gehen bei einem Klick auf den Spoiler alle auf der Seite gleichzeitig auf. Es ist nun hingemurkst und funktioniert erstmal ansatzweise barrierefrei, als Informatikübung würde ich dafür aber eine glatte fünf kriegen.
Allerdings ist die Lösung nach dieser Metrik immer noch mindestens einen Punkt besser als auf intfiction.org. Sie steht jetzt bei 2, also a) weiterhin 0, b) 1 da ohne JS "hell-auf-hell"-Spoilerfunktion, c) weiterhin 0 da wegen der CSS-Prämisse äquivalent zu a), d) weiterhin 1. Vielleicht analytisch nicht ganz symmetrisch, aber weitgehend barrierefrei sollte diese Lösung sein. Ganz symmetrisch wäre sie vermutlich mit einer Weiche für c), in der dann allein über JS ein- und ausgeblendet wird. Damit warten wir aber lieber aber auf ein technisch aktuelles Forum... _________________ interactive fiction database
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.