Why doesn’t the following display a 200px-high blue block?
<div style="position: absolute; height: 500px;">
<div style="width: 200px; height: 300px; background-color: Green; position: relative;">
a</div>
<div style="width: 200px; background-color: Blue; top: 0px; bottom: 0px; position: relative;">
b</div>
</div>
The positional properties (top, left, right, bottom) on elements with a relative position indicate offsets from its current position. You set a top and a bottom of 0 on a relatively positioned element. You basically told it to go nowhere.