Собственно, всё в шапке. Нормально ли это, анимировать, например, кнопки с помощью css, а ,например, появление элементов при скроле через js? Я примерно понимаю, когда нужно использовать js, а когда можно и css, но хотелось бы для не сложных анимаций использовать css. Но, например анимацию, в которой зависит от данных на css не сделаешь, практически.
Да, нормальная. Когда можно обойтись добавлением классов с помощью JS, но иногда нет, приходится ставить стили прямо в JS. Иногда можно обойтись исключительно CSS.
Когда будете использовать фреймворк а-ля React, то там удобно управлять этим всем из одного места.