css enkel vanaf 2° zichtbaar before toevoegen
Ik gebruik deze css
div.vrij span:not(:first-child):not(:nth-child(2))::before{/* 1° element=vrij, Vanaf 2 zijn de namen */
content:", ";
}
Echter via javascript toon of verberg ik bepaalde gegevens. De before zou pas mogen gebruikt worden vanaf de 3° zichtbare span.
De 1° is altijd zichtbaar
vanaf de 2° staan er namen
Nu heb ik dus een komma staan als de 1° speler verborgen is. dit is dus niet correct.
Iemand een idee hoe ik dit oplos via css?
Jan
Anders nog een expliciete :visible aan je selector toevoegen (?).
Quote:
Nu heb ik dus een komma staan als de 1° speler verborgen is. dit is dus niet correct.
Iemand een idee hoe ik dit oplos via css?]
Iemand een idee hoe ik dit oplos via css?]
Uhm, waar komen die spelers vandaan (database?), hoe wordt de HTML gegenereerd (dynamisch?) en hoe luidt de verdere functionaliteit?
Als het gaat om een kommagescheiden lijst waarbij verschillende spelers getoond/verborgen kunnen worden (hoe dit ook mag werken), kun je dit dan niet beter -voor het merendeel- programmeren, in plaats van met CSS oplossen?
Wat je in feite wilt is een komma gescheiden rijtje correct? Dus [naam][komma][naam][komma][naam]. Wat nu als de dit rijtje gewoon telkens opnieuwe genereert op het moment dat je een nieuwe combinatie weergeeft? Mogelijk kun je dit via JavaScript doen met een .join() op een array? Hier boet je dan wel in op toegankelijkheid.
Of je zorgt ervoor dat alle namen een [komma][naam] paar vormen, en je de [komma] verbergt voor de eerste naam? Dit zou e.e.a. ook een stuk eenvoudiger maken?
Ik denk dat sowieso die eerste <span> roet in het eten gooit omdat die anders werkt dan de rest, behandel deze dan ook apart zodat je de rest op eenzelfde wijze kunt manipuleren.
Meerdere oplossingen denkbaar. Begin met wat het functioneel zou moeten doen, maak dan een logische verdeling en hanteer een simpele oplossing. Anders wordt zowel de JavaScript als de CSS een incoherente chaotische brei.
De startlijst komt van een database. wie speelt tegen wie op welke dag. uit een andere tabel komen er spelers welke afwezig zullen zijn.
. zo zijn er X aantal speeldagen.
Bovenaan zie je de afwezigen. in het midden de effectieve partijen en onderaan zij die niet spelen.
Als ik nu een partij verplaats van 1 dag naar een andere(drag/drop) moeten de namen bij de ene dag verborgen worden en bij de andere dag getoond worden. Dit is dus javascript. hiervoor moeten natuurlijk alle namen er al zijn.
Jan
Gewijzigd op 19/02/2018 18:14:14 door Jan R
Mja, maak een aparte div/element voor die wedstrijden, zodat je alle elementen daarin hetzelfde kunt behandelen.
Dat is dus net wat ik nu doe. maar als het zou kunnen met css dan wordt de code dus kleiner met minder kans op fouten.
Gewijzigd op 20/02/2018 16:11:59 door Rob Doemaarwat