Actually CSS is not arbitrary. I don't know what you mean by "setting a position" but if you use float to right or left align an element, it will cause text to wrap on the opposite side. How would text wrap on float: center? It doesn't make sense, that's why you'd just want blank space on each side (hence margins.)
Everything else works well with absolute positioning. Need something vertically aligned?
position: absolute;
top: 50%;
margin-top: (1/2 height of element)