Inconsitency in determining width of absolutely positioned element when grandparent is relatively postioned

The desired effect is to have the red element containing the text "aligned to bottom", er, aligned to the bottom of the yellow box and be the same width.

Given the same css applied to both blocks below:

.container
	{
	position: relative;
	}
.parent
	{
	width: 50%;
	background: yellow;
	}

The way Firefox and Safari do it

aligned to bottom
.bottom_50
	{
	position: absolute;
	width: 50%;
	bottom: 0;
	background-color: red;
	}

ie. width is based on width of containing block

Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah

The way Opera and IE do it - based on the parent element

aligned to bottom
.bottom_100
	{
	position: absolute;
	width: 100%;
	bottom: 0;
	background-color: red;
	}

ie. width is based on width of parent element

Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah

Opera and IE are wrong

See section 4 of 10.1 Definition of "containing block" in the CSS2.1 specs.