Aloha ;)
das sehe ich genauso, ich suche den weg... :o)
In Ordnung. Schlagen wir doch mal nach. Zum Beispiel in unserem Wiki. Da steht, dass <label>
nur bestimmte Kindelemente haben darf.
beliebig viele Inline-Elemente Aber nicht: label
Okay, da haben wir den Grund, warum das mit den div nicht geht. label darf nur Inline-Elemente beinhalten, div ist aber ein Block-Element. Die Lösung ist also: wir benutzen innerhalb span inline-Elemente.
Nun - welches der vielen inline-Elemente nehmen wir? Schauen wir uns die betreffende Stelle im Code an.
<div class="holder"> <label for="box1"><div class="switch" id="eins" ></div></label> <label for="box2"><div class="switch" id="zwei" ></div></label> <label for="box3"><div class="switch" id="drei" ></div></label> <label for="box4"><div class="switch" id="vier" ></div></label> <label for="box5"><div class="switch" id="fuenf" ></div></label> </div>
Die ursprünglichen div haben (imho unsinnvollerweise) keinen Inhalt. Sinnvollerweise sollten sie diesen haben. Was soll da rein? Wenn Bilder (als Vorschau, o.ä.) rein sollen, dann hast du dein inline-Element (<img>
). Wenn Text rein soll, oder wenn du einen "Container" für beliebigen Inhalt (oder nur einen Platzhalter) brauchst, dann ist <span>
dein Element der Wahl - denn Span ist für inline-Elemente, was div für block-Elemente ist: ein generischer Allround-Container (im Fall von span eben nur für inline-Elemente).
Wenn du jetzt noch möchtest, dass die spans, die du jetzt statt den divs benutzen wirst (ja, einfach "div" durch "span" ersetzen) auch genauso aussehen wie divs, dann kannst du per CSS sowas machen wie
span.switch { display: inline-block; }
oder
span.switch { display: block; }
Das ist sehr viel sinnvoller, wenn du erreichen willst, dass da kleine Blöcke stehen. Denn Fragen der Darstellung sollten rein mit CSS erreicht werden, HTML ist ausschließlich für sinnvolles Markup da (und block-Elemente wie div in inline-Elementen wie label ist kein sinnvolles Markup, auch wenns auf den ersten Blick in der Darstellung "richtig" aussieht).
Grüße,
RIDER
Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller Erreichbar manchmal im Self-TS (ts.selfhtml.org) oder sonst - wenn online - auf dem eigenen TeamSpeak-Server (fritz.campingrider.de) oder unter: # Facebook # Twitter # Steam # YouTube # Self-Wiki # ch:? rl:| br:> n4:? ie:% mo:| va:) js:) de:> zu:) fl:( ss:| ls:[