Я хочу следовать схеме, изложенной в этот блог, в котором используются следующие правила CSS, чтобы указать, где должны отображаться элементы:
.items li {
position: absolute; top: 0; left: 0;
}
.items li:nth-child(1) { transform: translate3d(0, 0%, 0); }
.items li:nth-child(2) { transform: translate3d(0, 100%, 0); }
.items li:nth-child(3) { transform: translate3d(0, 200%, 0); }
Однако я не знаю, сколько элементов будет в списке, поэтому я бы предпочел не жестко закодировать, скажем, 30 строк, как указано выше, и ограничиться 30 элементами списка. Вместо этого я хотел бы добавлять правило стиля каждый раз, когда добавляется элемент, что означает, что у меня может быть неограниченное количество элементов списка.
Я пробовал разные подходы, но не могу понять, как программно добавлять такие правила стиля динамически. Любая помощь приветствуется. Я пишу приложение на Dart, но решение Javascript также приветствовалось бы.
Обновить
См. Ниже принятый ответ, который направил меня на правильный путь. Он использует jquery, поэтому я включил ниже версию для всех, кто, как я, использует Dart. В версии Dart используется Как динамически добавлять таблицу стилей с помощью Dart?, который я только что нашел - не знаю, как пропустил раньше. Спасибо всем за помощь.
import 'dart:html' as Html;
void main(){
Html.StyleElement styleElement = new Html.StyleElement();
Html.document.head.append(styleElement);
Html.CssStyleSheet sheet = styleElement.sheet;
final rule = 'div { border: 1px solid red; }';
sheet.insertRule(rule, 0);
}