A lot of cool designs can be created with just HTML and CSS.
For the following examples I use labels, radio and checkbox inputs in combination with the css selectors :checked, + and ~.
These are associated with one input, either by containing that input or by using the attribute for to target the id of a certain input.
Once clicked the label will transmit the click to the associated input.
Several labels can be associated with a single input by using the for attribute.
These inputs are extremely helpful since they have 2 states that depend on user interaction, either :clicked or :not(:clicked) which can be targeted by CSS.
After targeting the state of the radio and checkbox inputs with the :checked selector we can combine that with the + selector which gives us the element placed immediately after the input and ~ which gives us all elements placed after the input. With that we style said elements according to each state of the input.
This is the first tab
This is the second one
And this the last
Popup with tabs
Slider with picture popup