
Oft mag man Trennstriche in einer Navigation haben. Doch genau nach dem letzten Link sollte keiner mehr erscheinen. Oder man mag Rahmen vergeben. Aber auf einmal sind die viel zu dick weil doppelt.
Hier meine CSS Tipps aus den Tiefen meiner Festplatte. Quick und dirty – wie es gut deutsch heißt.
Die Navigation soll am Schluss so aussehen:
Home| Impressum | News
Trennstriche in der Navigation mit CSS3
Man mag bei einer Navigation zwar zwischen den Elementen einen Rand oder Trennstrich, aber weder vor dem ersten Element noch nach dem letzten Element.
Dazu verwendet man die Pseudoklassen last-child und first-child.
Setze ich den Rand /Border nach Rechts, dann brauche ich last-child, setze ich den Rand /Border nach Links, nach brauche ich first-child.
A) Zuerst bekommen alle li Elemente einen rechten Rand.
li{border-right:1px solid red;} |
Dann nehm ich dem letzten li Element den Rand wieder weg.
li:last-child{border-right:none;} |
B) Zuerst bekommen alle li Elemente einen linken Rand.
li{border-left:1px solid red;} |
Dann nehm ich dem ersten li Element den Rand wieder weg.
li:first-child{border-left:none;} |
CSS Tipp Border dies kann auch der IE
Die Naviagtion soll also so aussehen:
Home| Impressum | News
Die erste Reaktion ist immer dies mit border zu verwirklichen. Ich geh davon aus, dass diese Navi wie meist in einer Liste steckt.
li{border-right:1px solid red;} |
Das Ergebnis ist dann dieses:
Home | Impressum | News |
Und der letzte border / Rahmen strahlt einem glücklich an und selber ist man verzweifelt.
Wie sooft im Leben ist auch hier die CSS Lösung nicht Rechts, sondern Links zu finden.
CSS und +
li+li{border-left:1px solid red;} |
li+li ignoriert das allererste li, also kann da kein border/Rahmen sein.
CSS ++
Home Impressum | News
Dies kann man so verwirklichen.
li+li+li{border-left:1px solid red;} |
Dieses Plus oder Plus Plus usw. wirkt auch bei allen anderen HTML Tags. Einfach mal ausprobieren und neue Möglichkeiten entdecken.
Geheim
Danke, wieder was gelernt
.
Jeff Jagger
ich habe schon lange mit css zu tun, aber das bei li+li das erste li nicht berücksichtigt wird ist mehr als interessant. geht das auch wenn man mit mehreren überschrften arbeitet? dann könnte auf diese weise immer der ersten h1 einen anderen abstand nach oben geben, wie den darauffolgenden h1 auf einer seite. da fäält mir ne menge ein was ich jetzt testen werde, danke für den heißen tipp!
Max
den trick verwende ich nun auch öfter
vielen dank!
Richard
Diese Seite hat mir bei der Erstellung einer neuen Website geholfen, vielen Dank für den tollen Tipp!
bucopark.at
Pingback: CSS Trennstriche in Menü und Navigation - Simoncreative - Webdesign & SEO aus Darmstadt