No.
The CSS 2.1 spec states this standard of painting elements:
- the background and borders of the
element forming the stacking
context.
- the child stacking contexts with
negative stack levels (most negative
first).
- the in-flow, non-inline-level,
non-positioned descendants.
- the floating descendants.
- the in-flow, inline-level,
non-positioned descendants,
including inline tables and inline
blocks.
- the child stacking contexts with
stack level 0, and the positioned
descendants with 'z-index: auto'.
- the child stacking contexts with
positive stack levels (least
positive first).
Given these rules and your HTML, #container
is creating the stacking context for the element #inner
, which means #container
has to be rendered first.
Other people have already posted alternative HTML/CSS to get the effect you desired, but if you want to know more about why what you want isn't possible, here is the documentation:
http://www.w3.org/TR/CSS21/visuren.html#layers