molily: fieldset {display:inline} -> Fehler in Opera?

Beitrag lesen

Hallo,

Diese Elemente sind zur Gruppierung von Formularfeldern, genauer gesagt von Paaren von Feldern und Feldbeschriftungen, nicht dafür, um nur einen optischen Effekt zu erzielen.

Darüber hatte ich wirklich vorher nachgedacht. Aber wenn <fieldset> laut Definition (sogar in Strict) direkt unterhalb von <body> zulässig ist, ziehe ich den Schluß, daß die Verwendung auch außerhalb von Formularen nicht nur zulässig, sondern darüber hinaus auch für andere Gruppierungen angedacht ist.

Das ist reine Spekulation, halte dich lieber daran, was ausdrücklich erlaubt ist. Ich denke eher, dass keine eigene Gruppe in der DTD angelegt werden sollte und demnach fieldset der Einfachheit halber %block zugeordnet wurde. In meinen Augen ist dies ein klarer Fehler.

»fieldset« hat eine logische Funktion und wird von verschiedenen Browsern auch explizit mit dieser Funktion ausgegeben. Die visuelle Ausgabe, auf die du aus bist, ist nur eine mögliche, Clients können die Funktion auf vielfältige Weise wiedergeben. Es wäre für den Benutzer absolut verwirrend, wenn deine Bildergalerie als Ansammlung von Formularfeldgruppen ausgegeben würde.
fieldset und legend sind Formular-Elemente, und gerade bei diesen ist es besonders kritisch, wenn sie umformatiert werden und somit ungewohnt dargestellt werden, dementsprechend besteht Notwendigkeit, sie über Browsereinstellungen und Benutzerstylesheets vor Umformatierung zu schützen. Ein Argument mehr, warum deine Konstruktion heikel ist.

Anders als Orlando sagt, ist dieser Missbrauch schlimmer als »font«. Wenn eine Überschrift mit font anstatt hX ausgezeichnet wird, ist die logische Information gleich Null, sie fehlt einfach. Wenn aber blockquote für Einrückungen (</archiv/2003/6/50092/#m274065> ff.) oder fieldset/legend des Rahmen- und Titeleffektes wegen benutzt werden, existiert eine logische Information, welche aber falsch und irreführend ist, was um einiges problematischer ist, weil sie desinformiert.

Lies bitte die Quellen, die ich dir gegeben habe, vollständig:
»The FIELDSET element allows authors to group thematically related controls and labels. Grouping controls makes it easier for users to understand their purpose while simultaneously facilitating tabbing navigation for visual user agents and speech navigation for speech-oriented user agents. The proper use of this element makes documents more accessible.« (Bzgl. der dt. Übersetzung siehe Link im Vorgängerposting.)
Jede andere Anwendung wäre kontraproduktiv.

Ein Workaround ist, auf fieldset zu verzichten und beispielsweise div- und/oder p-Elemente zu verwenden. Der Rest sollte sich per float, margin (z.T. negativen, falls du denselben Effekt haben willst) und border lösen lassen - was spricht dagegen?

Der Aufwand ganz einfach. <fieldset> i.V. mit <legend> bietet mir hier die Möglichkeit, den Bildern auf einfachste Art einen Titel zu geben, der dazu noch ansprechend im Rahmen angezeigt wird.

Das ist für mich hier kein Argument, weil ich den angeblichen Aufwand nicht sehe. Ersetze die fieldset und legend durch div-Elemente, gebe ihnen einen Rahmen, Abstände und float, wie ich sagte. In zwei Minuten solltest du mit gewöhnlichen Elementen dieselbe Darstellung wie bei fieldset/legend erreichen.

Daß dieser im am weitesten verbreiteten IE auch noch abgerundete Ecken hat, ist dann noch das I-Tüpfelchen...

Prächtiges Argument.

Mathias

--
<img src="http://validator.w3.org/images/vh20" border="0" alt="">