use HTML5 and CSS to create 5 equal and elastic columns that adjust height in a single row

I'm fairly beginner with CSS and wish to make a HTML block from scratch on our Jive platform that is a single row of 5 buttons. Each button will contain an icon and text with the entire button being a link.
I want the block to span 100% of the div it is in, and the buttons to adjust height and width depending on page width so that all 5 buttons are always on the same row until the screen width drops to below 600px and each button will fill a row each.