Foor, с этого и надо начинать, ибо на Windows и Android этого нет и никогда не было. Решение есть, я его прислал выше. Оно работает во всех современных браузерах, кроме iOS Safari, в десктопном Safari работает.
Адам Сулумов, полноценного решения нет и в ближайшее время не будет. Так ещё и с такими требованиями (семантичная вёрстка, адаптивность, полноценной редактируемостью, SEO и чтобы не на position: absolute и т. п.), к сожалению.
Так что — вручную, конечно же. Иначе бы CSS-фреймворки не плодились, а мы всё бы делали в таком ПО.
Есть такая штука — шаблонизация. Делаете один шаблон, а backend собирает на его основе страницу, выводит товары в цикле внутри блока из одного шаблона и т. п. Данные товаров хранятся в базе данных.