Ich hoffe wirklich, ich wiederhole keine alte Frage - ich bin neu bei Selektoren, daher könnte meine Terminologie fehlen.Aktives Register mit einfacher Seitennavigation hervorheben
Ich arbeite an einer Webseite mit Registerkarten für eine Seite basierend auf dieser Default :target with CSS Lösung. Ich möchte, dass die aktuelle Registerkarte in irgendeiner Weise hervorgehoben oder geändert wird, um den aktuellen Standort anzugeben.
HTML:
<ul id="tabnav">
<li><a href="#tab1" class="tab1">Tab 1</a></li>
<li><a href="#tab2" class="tab2">Tab 2</a></li>
</ul>
<a id="tab1"></a>
<a id="tab2"></a>
<div class="tab tab1 default-tab">This is text you should see as you load the page</div>
<div class="tab tab2">This is text that will appear after you click on tab 2</div>
CSS:
.tab {
display:none
}
.default-tab {
display:block
}
:target ~ .default-tab {display:none}
#tab1:target ~ .tab1,
#tab2:target ~ .tab2 {
display: block
}
ul#tabnav a:hover {
background: red;
}
ul#tabnav a:target{
border-width: thick;
border-color: black;
}
Es scheint, wie mein letztes Element (a: Ziel) nichts tun, auch wenn auf Registerkarten klicken bringt mich zu neuen Ankern und ändere den angezeigten Inhalt. Irgendwelche Vorschläge?
Hallo Michael, Vielen Dank für Ihre Antwort. Diese Information über IDs &: Target war neu für mich! Ich habe versucht, minimale jquery/javascript in dieser Arbeit (vielleicht dumm) zu verwenden. Ich vermute, dass eine skriptfreie Lösung möglich ist (z. B. https://css-tricks.com/examples/CSSTabs/ Beispiel 6), aber das Fehlen eines Standard-Tabs ist mühsam. –
@ K.D.Mortimer ja, es ist möglich, aber nicht mit Ihrem Markup. Ich habe mit dem von Ihnen bereitgestellten Markup gearbeitet. Alle diese Lösungen sind hacky - ich sehe nicht den Punkt, wenn Sie ein paar Zeilen Javascript schreiben können, die es sauber machen. Dieses Zeug kontrolliert den Zustand der Seite - CSS funktioniert nicht so gut oder überhaupt nicht. CSS ist nur für Design. Javascript ist der Standard für die Manipulation des Seitenstatus, und CSS passt sich damit dem Design des Seitenstatus an. –