XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   Barrierefreiheit (http://xhtmlforum.de/forumdisplay.php?f=78)
-   -   Barrierefreiheit - Absolute Positionierung (http://xhtmlforum.de/showthread.php?t=46331)

dbub 12.06.2007 10:01

Barrierefreiheit - Absolute Positionierung
 
Hallo zusammen,

ich bin gerade dabei eine barrierefreie Seite zu erstellen.
Im Internet lese ich immer, dass man auf die Absolute Positionierung verzichten soll. Es werden aber keine Nachteile aufgezeigt.

Meine Frage nun: Was sind die wichtigen Gründe darauf zu verzichten? Ich brauche Fakten :)

Folgendes Situation habe ich gerade.

Meine Seite ist mittig (Position relative).
Ich habe einen grafischen Banner mit z-level und absoluter Positionierung. Den lege ich über eine Überschrift, die auch mit z-level und absoluter positionierung gesetzt ist, drüber.

Werden die Grafiken nun im Browser ausgeblendet, ist die Überschrift zu sehen.

Natürlich muss ich jetzt aber alle weiteren Elemente wie Navigation und Conten absolut positionieren.

andir 12.06.2007 10:30

Absolute Positionierung ist kein Nachteil wenn man die Beschränkungen kennt und damit umgehen kann.

Im Allgemeinen wird deswegen davor gewarnt, weil absolut positionierte Elemente im Quelltext frei geordnet werden können - der Autor wird eventuell nachlässig, was die inhaltliche Struktur des Dokuments angeht.

Also, wenn schon: Die sinnvolle inhaltliche Struktur erhalten, (für Druck, screenreader, Leute, die mit Modem unterwegs sind ( knapp 50% in Deutschland) und Bilder / CSS abgeschaltet haben, für Mobilnutzer usw.

Ferner gibt es das offensichtliche Problem, dass falsch eingesetzte absolute Positionierung bei einer Skalierung der Seite zu Überlappungen einzelner oder aller Elemente führen kann und damit zur Unbenutzbarkeit /Unlesbarkeit führen kann.

Also, wenn schon: Mit Bedacht einsetzen.
Es spricht nichts dagegen, einzelne Elemente absolut zu positionieren wie es in deinem Beispiel genannt ist. Die gleiche einfache Technik verwende ich auch um ein Fallback für den Druck bzw. für jene Leute anzubieten, die Bilder grundsätzlich ausgeschaltet haben, von der Nützlichkeit für Screenreadernutzer ganz zu schweigen.
Zitat:

Natürlich muss ich jetzt aber alle weiteren Elemente wie Navigation und Conten absolut positionieren.
DAS ist ein Fehlschluß. Du kannst einen normalen Container im Elementefluss haben, der lediglich relativ positioniert (ohne weitere Angabe) ist. Dieser kann absolut positionierte Elemente enthalten, welche sich dann an den Ecken des relativ positionierten Containers orientieren.

Für Navi und Content kannst Du wieder ganz normal agieren, z.B. floaten.

position: Positionsart: CSS-Referenz auf CSS 4 You - The Finest in Stylesheets

dbub 12.06.2007 11:33

Super. Das nenne ich doch jetzt mal eine geschmeidige Antwort.

Vielen Dank für den Fehlschlusshinweis. Mit Float funktioniert es :)

heiko_rs 12.06.2007 14:23

Zitat:

Zitat von dbub (Beitrag 336325)
Ich habe einen grafischen Banner mit z-level und absoluter Positionierung. Den lege ich über eine Überschrift, die auch mit z-level und absoluter positionierung gesetzt ist, drüber.

Dann solltest Du Dir auch mal dieses Prinzip ansehen. Und wie andir bereits sagte, brauchst Du keine weiteren absoluten Positionierungen, nur weil Du eine solche Image-Replacement-Technik einsetzt.

dbub 12.06.2007 15:06

Danke für den Link.

Was ich festgestellt habe ist, dass meine Navigation beim IE7 bei der Skalierung nicht mitwächst, sondern an der Position bleibt...Mein Banner leigt dann irgendwann über da Navigation...

heiko_rs 12.06.2007 15:22

Dann wird er am falschen Element ausgerichtet - passiert mit o.g. Technik nicht.

andir 12.06.2007 15:28

Wohl richtig :)

Wenn Du einen Header mit Grafik hast, sollte dieser im normalen Elementefluss liegen, wiewohl relativ positioniert, um Kindelementen ( z.B. img oder hx) die absolute Positionierung innerhalb des Headers erlauben zu können, wenn es denn notwendig ist.

Wenn Du mal eine Beispielsseite online hast, können wir uns das ja mal anschauen.

Übrigens @ beide: Ich verwende in meinem Header eine ganz normale Überschrift als Headline, normal gesetzt und habe nur das img absolut darüber positioniert, weil es halt eine Schmuckgrafik ist. (mit reichlich Platz nach oben unten usw) Habe das Problem also nicht, dass das CSS bei Wegfall einer Bildanzeige irgendwie geändert werden muss. Einfacher gehts nimmer, denke ich.

heiko_rs 12.06.2007 15:33

Zitat:

Zitat von andir (Beitrag 336384)
habe nur das img absolut darüber positioniert, weil es halt eine Schmuckgrafik ist.

Meinst Du wirklich img - also steht's im Markup?

dbub 12.06.2007 15:47

@andir...hast du ne beispielseite?

Dann könnte ich mir das mal anschauen...irgendwie funktionieren bei mir die Beispiele nicht....Vielleicht sehe ich auch vor lauter Bäumen den Wald nicht mehr..

heiko_rs 12.06.2007 16:50

Ich würde das Logo (links) ins Markup stellen, und den Rest der Header-Grafik ins CSS (da Deko). Und ich würde die Grafiken auch nicht skalierbar machen, das ergibt meiner Meinung nach nicht viel Sinn.


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:39 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2023