Как сделать margin-bottom всем inline-block которые «не в последней строке»?
Инлайн-блоки автоматически переносятся на новую строку.
Хорошо когда один инлайн-блок занимает всю строку и можно поставить :not(:last-child).
А как быть, если инлайн-блоков много, и мы заранее не знаем - сколько из них переместиться в последнюю строку?
То есть размер строки конечно лимитирован. То есть например их влезет по 3 штуки в строку. Но в последней строке может оказаться как 1, так и 2 так и 3 элемента.
И нужно сделать, чтобы последняя строка не имела margin-bottom: 10px, а все остальные - имели.
Обратите внимание на статью Количественные селекторы CSS
Конкретно по вашему вопросу вам уже дали хорошее и простое решение, но в статье описаны решения для множества подобных и сложнее ситуаций.