Pseudoelement :after und :before

Die Pseudoelement :after und :before sind virtuelle Elemente die vielseitig einsatzbar sind. Als unsichtbares Element mit clear Funktion nach einem float Element, oder als sichtbares Layoutelement. Pseudoelement :after und :before fügen ein Element vor oder nach dem Inhalt im Element ein. Mit dem Atribut content wird Text augegeben. Zum Beispiel Anführungs- und Schlusszeichen bei einem Zitat. Die URL eines Links, kann mit :after für die Printversion ausgegeben werden.

Die Pseudoelemente :after und :before sind nicht anklickbar.
Die Pseudoelemente :after und :before sind Inline Elemente.
Die Pseudoelemente :after und :before brauchen immer ein Attribut content: " " , sonst werden sie nicht dargestellt.

Ich bin eine langweilige Text Box, eine Platzhalterbox.
.box:after {
    content:'ich stehe nach dem Text :after';
    border: 1px solid #f67;
}
.box:before {
    content:'ich komme zuerst :before';
    background: #D1F523;
    }

Print Links a:after

Damit ein Link auch Ausgedruck Sinn macht setzt man mit den Pseudo-Element :after und der Eigenschaft content: die komplete URL des Hyperlins neben den Verweis.

a:after  { 
color: #000000;
content: " * Link " attr(href) "* ";
}

Zitat

Mit blockquote:after, blockquote:before werden Anführungs- und Schlusszeichen, vor und nach dem Zitat eingefügt.

Ich bin eine langweilige Text Box, eine Platzhalterbox.
blockquote:after, blockquote:before  { 
color: #ff6677;
content: " ' ";
font-size:30px;
}

Clear mit dem Element :after

Es ist die einfachste Art ein fliessendes (float) Element mit einen clear aufzuheben, wenn der clear auf ein unsichtbares :after Element zu gesetzten wird. Dies hat zudem den Vorteil, dass keine zusätzlichen HTML Elemente für Layoutzwecke gelden werden müssen.

header:after {
    height: 0;
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
}

Eine schöne Art float aufzuheben ohne einen clear einzusetzten ist bei quirksmode beschrieben.

Kombinationen :last-child mit :after

Der Pseudoselektor :last-child wählt das letzte Element einer Gruppe oder eines Bereiches.
Im folgenden Beispiel werden die Listenpunkte ( li ) mit der Anweisung display:inline; auf eine Linie gesetzt. Die Definition li:after (siehe auch CSS3Pseudoelemente) setzt neben jedes Listenelement einen /Slasch. Nach den letzten Listenpunkt soll kein /Slasch angezeigt werden. Mit li:last-child wird das letzte Listenelement angesprochen, li:last-child:after, ist der Breich nach dem letzen Listenelement.

  • House
  • Weater
  • Contact
  • Samples

HTML

 <ul class="countbox">
   <li>House</li>
   <li>Weater</li>
   <li>Contact</li>
   <li>Samples</li>
 </ul>

CSS

.countbox li {
	color: #999;
	display:inline;
	}

.countbox li:after {
	padding: 0 3px 0 5px;
	content: '/';
	color: #999;
	}
.countbox li:last-child:after {
	content: '';
	padding: 0;
	}