[csswg-drafts] [css-display] Does run-in algorithm run multiple times for each run-in sequence?

Loirooriol has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-display] Does run-in algorithm run multiple times for each run-in sequence? ==
Suppose I have this code

```html
<span style="display: run-in">Foo</span>
<div>
  <p>Bar</p>
</div>
```

Then [Run-In Layout](https://drafts.csswg.org/css-display-3/#run-in-layout) says

> If a run-in sequence is immediately followed by a block box that does not establish a new block formatting context, it is inserted as direct children of the block box

So the example above becomes

```html
<div>
  <span style="display: run-in">Foo</span>
  <p>Bar</p>
</div>
```

But now the run-in sequence is still immediately followed by a block box that does not establish a new block formatting context.

Does the algorithm run again in order to obtain the following?

```html
<div>
  <p><span style="display: run-in">Foo</span> Bar</p>
</div>
```

It think it should. But then, how to prevent the following quote from generating an infinite number of boxes?

> Otherwise, an anonymous block box is generated around the run-in sequence and all immediately following inline-level content

```html
<div>
  <p>
    <anonymous-block><span style="display: run-in">Foo</span> Bar</anonymous-block>
  </p>
</div>
```

```html
<div>
  <p>
    <anonymous-block>
      <anonymous-block><span style="display: run-in">Foo</span> Bar</anonymous-block>
    </anonymous-block>
  </p>
</div>
```

And so on.

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1460 using your GitHub account

Received on Wednesday, 24 May 2017 20:01:12 UTC