А) можно на absolute, но:
1) Весь контент должен находиться в контейнере и иметь фиксированную ширину в диапазоне разрешений устройств (например как container у bootstrap)
2) Подгонять позиции блоков к листьям придется для каждого вьюпорта, т.е. минимум 4 раза (если у вас есть адаптивка вообще)
Б) мне нравиться способ, когда поверх изображения накладывают SVG, на котором расставлены прозрачные блоки с id, потом через js привязываются к ним и генерируют контент (но способ плох, если вам важен SEO для этих блоков)
B) использовать чистый canvas или библиотеки для отрисовки графики d3js, snapjs и др (красиво, удобно, гибко, но сложнее в реализации и SEO тоже пострадает)