Выражайте цели более конкретно... В зависимости от них и будет ясна возможность.
Для примера в первом пункте можно использовать
:target jsfiddle.net/84hj53u9 Или использовать
input radio
2 и 3 пункт это обычный
:hover
3. Можно придумать сетку из квадратов(4x4, 8x8 в зависимости от точности). Если мы наезжаем на какой-то квадрат(
:hover), то определенный элемент, который привязан к этому квадрату, анимируется. Извращение - да, но работает без JS.
jsfiddle.net/znr6k1c3 (если сделать сетку больше, то и контроля будет больше)
4 и 5 Была какая-то новая api(в очень сырой пре-альфа), которая отвечала за появление во вью элемента. Не могу вспомнить(мб путаю с js)... Поддержки никакой, но Вы ничего не пояснили для чего надо.
6. Создаете
@keyframes, который будет анимироваться при загрузке контента:
jsfiddle.net/6yh0g82w
7. Нет
Все это извращение, которое не имеет смысла. Если у вас задача сделать проект без js, то и анимация не нужна. Ибо задача совсем в другом состоит. А для всего остального давно уже придумали
GSAP,
animejs и etc