• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

layout ohne table

Status
Für weitere Antworten geschlossen.
das wichtigste habe ich vergessen: :???:
Code:
ul:after {
display: block; /*nicht none*/
content: ".";
[COLOR="DarkRed"][B]clear: both;[/B][/COLOR]
height: 0;
visibility: hidden;
}
 
Wenn das zu viel OT ist, könnte ein Moderator das bitte splitten? Ist ja ein wichtiges Thema.

Hehe, so ist das manchmal.
Habs mal probiert und überraschend festgestellt, dass es tatsächlich ul:after und nicht ul li:last-child:after heißen muss. Bei der Kombination :after/content wird der jeweilige Inhalt also ans Ende des entsprechenden Elements, aber in dieses hinein eingefügt. Denn ein clearendes Blockelement nach der Liste würde diesen Effekt ja nicht erzeugen.
Trotzdem geht das Ganze leider nicht im IE - weder bei Version 6 noch bei Version 7. Da das Clearen unter Umständen sehr wichtig sein kann, um Inhalte lesbar zu halten, kommt ein Javascript-Workaround wohl nur in Frage, wenn bei deaktiviertem Javascript das ganze Layoutstylesheet versteckt wird.

Gruß
Junny
 
IE7 kennt :after nicht.

Für den IE muß die <ul> nur Layout haben.
Die Floats werden dann eingeschlossen und <ul> spannt sich auf. Als ob es ein clear geben würde.
Nur für IE bis Vers.7:
Code:
ul {
zoom: 1;
}

Nur für IE5:
Code:
ul {
height: 1px;
}
 
*zonk*

Habe versucht, mit display: block; Layout zu geben, das hat nicht geklappt.

Vielen Dank für diese Infos!

Gruß
Junny
 
display: block löst kein layout aus.
http://onhavinglayout.fwpf-webdesign.de#prop

id="liste" ist ul:
Code:
  #liste {
background-color: #5B5B5B;
}

  #liste:after {
display: block;
content: ".";
clear: left;
height: 0;
visibility: hidden;
}

#liste li {
float: left;
}

/*IE7 layout*/
* +html #liste {
min-height: 0;
}
/*IE5 - 6 layout*/
* html #liste {
height: 1px;
}
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben