Switching between different list layouts

I would like to provide an option for users (button, dropdown etc) to users of my site(s) to switch between two-column and three-column templates. I already have the two list pages created. Any ideas how to achieve this without JS? (Closest I have seen is this topic but haven’t tested it yet.)

Off the top you are talking using some of the active states in CSS like active: checked: selected:
See this link for more on that.

I would then search for a way to use a parent state such as group or peer to make this happen.