Если вы не используется ol или ul, то зачем ломать семантику и добавлять li? Оборачивать в div то же не обязательно, просто в btns-container можете добавить свойства grid'а или flex'а и наслаждаться нормальным отображением.
Конечно нужно использовать li в связке с ol или ul по семантике. Вопрос в другом, считаются ли кнопки списком, как например навигация, которую нужно оборачивать в список:
mikhavital, по идеи нет. Если я не ошибаюсь, то если вы добавите кнопку в список, то это не будет считаться нарушением семантики и ни чего плохого в этом не будет. Но опять же, я могу ошибаться. В таких случаях лучше проверять через специальные для этого сервисы.
Если вам нужно использовать кнопки исключительно как ссылки, то используйте лучше ссылки, стилизованные под кнопки. Если же нужно выполнять какую-то логику через эти кнопки, то оберните только в div эти кнопки, без всяких списков.
Для лучшего понимания ситуации лучше уточнить для каких целей вы будете использовать эти кнопки.