display: grid method to create equal width buttons with equal gaps between.

This method uses display: grid in the unordered list style (#menu ul {}). This method allows you to divide up the width of your live space equally with equal gaps between each button. You just have to figure out the math. While 100% isn't evenly divisible by 6, it is possible to get 6 equal buttons with 5 equal gaps. If you do the math, you can get any number of buttons you'd like.

There are no issues with the normal flow of the document, so no issue with collapsed containers, overflow or unwanted scrollbars.

If your numbers aren't tidy, you can always make up 1% in an individual button. Probably nobody will notice.