Ik heb een component in JS geschreven dat een lijst met verschillende kolommen en rijen kan weergeven. Dat lukt goed, alleen krijg ik het scrollen niet helemaal voor elkaar zoals ik het graag zou willen.
Ik wil de mogelijkheid voor zowel een horizontale als een verticale scrollbar. Als er meer rijen zijn dan dat er in het weergave gebied passen, dan moet er logischerwijs een verticale scrollbar komen. Als de kolommen breder zijn dan wat in het weergave gebied past, dan moet er dus een horizontale scrollbar komen.
Het probleem ontstaat wanneer beide scrollbars worden weergegeven. Met de verticale scrollbar wil ik de rijen kunnen scrollen zonder dat de headers van de kolommen meescrollen; deze moeten gewoon blijven staan. Met de horizontale scrollbar, echter, wil ik zowel de rijen als de headers van de kolommen kunnen scrollen. Anders scroll ik de rijen zonder dat deze meegaan.
Hier een illustratie (
) van hoe ik de scrollbars ongeveer geplaats zou willen hebben:

Puur met CSS gaat dit mij voorlopig niet lukken. Ik zou iig. niet weten hoe. Voor de verticale scrollbar plaats ik de rijen in een eigen container waarop ik overflow-y: auto; op instel. Ik zou de rijen en de kolommen dan ook weer in een container kunnen zetten met overflow-x: auto;, maar dan zou de verticale scrollbar ook mee scrollen, en helemaal aan het einde van de rijen staan, niet wat ik zoek dus.
Een andere optie is om iets te gaan uitvogelen met de onscroll event van de container van de rijen en dan een negatieve linker margin op de container van de headers van de kolommen. Dit wil ik echter wel graag vermijden als het kan. Iemand nog een suggestie?
Ik wil de mogelijkheid voor zowel een horizontale als een verticale scrollbar. Als er meer rijen zijn dan dat er in het weergave gebied passen, dan moet er logischerwijs een verticale scrollbar komen. Als de kolommen breder zijn dan wat in het weergave gebied past, dan moet er dus een horizontale scrollbar komen.
Het probleem ontstaat wanneer beide scrollbars worden weergegeven. Met de verticale scrollbar wil ik de rijen kunnen scrollen zonder dat de headers van de kolommen meescrollen; deze moeten gewoon blijven staan. Met de horizontale scrollbar, echter, wil ik zowel de rijen als de headers van de kolommen kunnen scrollen. Anders scroll ik de rijen zonder dat deze meegaan.
Hier een illustratie (

Puur met CSS gaat dit mij voorlopig niet lukken. Ik zou iig. niet weten hoe. Voor de verticale scrollbar plaats ik de rijen in een eigen container waarop ik overflow-y: auto; op instel. Ik zou de rijen en de kolommen dan ook weer in een container kunnen zetten met overflow-x: auto;, maar dan zou de verticale scrollbar ook mee scrollen, en helemaal aan het einde van de rijen staan, niet wat ik zoek dus.
Een andere optie is om iets te gaan uitvogelen met de onscroll event van de container van de rijen en dan een negatieve linker margin op de container van de headers van de kolommen. Dit wil ik echter wel graag vermijden als het kan. Iemand nog een suggestie?