hello everyone and thanks for reading

i want to create a family tree and i can't seem to find the right solution.
check the image for the way it should be.

each person has its own DIV (this is done by CMS so not changeble)

state:

- if a person is not presen, the DIV won't be there too, but all the other persons should stay where they are -> float does not work (?)

- if a whole level of persons is missing (like grand-grand-parents) the rest should move up to the top -> position: absolute; not working (??)

- choosing position:relative; i can't get the div's to be side-by-side
when i use a negative margin-top: I can fix this, but then i NEED the first person in each level, because otherwise the rest will move up, right (???)

maybe this is really simple, but can anyone please tell me which way the divs should be done with CSS?

thanks a lot!!!!!!!!!!!!!!!!!!!!!!!