[css3-text] collapsed space break opportunities

I've been reviewing the white space collapsing section and ran into an issue.

    # When wrapping, line breaking opportunities are determined based
    # on the text prior to the white space collapsing steps above.

We added this sentence in this thread:
   http://lists.w3.org/Archives/Public/www-style/2008Dec/0075.html

The intention was to capture that
   <p><nowrap>A </nowrap> B</p>
is allowed to wrap, even though the preserved space is the non-wrappable one.

But, it's unclear what happens when you have this:

<style>
p { border: solid; width: 1em; }
em { border: double orange; }
</style>

<p><nowrap>A </nowrap> <em> </em> <em> </em> B

Wrapping aside, this creates A, followed by a space, followed by two
empty orange borders, followed by B. Where's the wrap point wrt the
orange boxes?

I can see a logical argument for
   * allowing any of the points where a space existed to be a wrap point, or
   * saying that when a breakable space collapses with a non-breakable one,
     the collapsed space is breakable.

Thoughts?

I'll note Firefox and Opera seem to wrap right before B, even if I forbid it:
   <p><nowrap>A </nowrap> <em> </em> <nowrap><em> </em> B</nowrap>
(WebKit just refuses to render the empty inlines.)

~fantasai

Received on Monday, 9 January 2012 21:50:57 UTC