- From: Håkon Wium Lie <howcome@opera.com>
- Date: Tue, 27 Jan 2015 11:19:52 +0100
- To: fantasai <fantasai.lists@inkedblade.net>
- Cc: www-style@w3.org
fantasai wrote: > > http://www.wiumlie.no/2014/tests/multicol-clip.html > > So, I'd like to clarify where/if break points can be added inside line > > boxes and images. > > They're not really fragmentation break opportunities in the sense that > the layout will reflow around the break, but it is allowed to "break" > the content by slicing it if it won't otherwise fit on a single page. I'm not sure I follow. Either slicing should be listed as a break, or not. As it stands, the specifiction lists breaks, and then adds slicing (which basically allows UAs to break any content whereever they want without regard for the listed breakpoints) as an optional afterthought. I suggest saying that: - line boxes should never be sliced, and that - replaced content may be sliced, based on value of 'break-inside' (see below) > > My own suggestion would be to not allow them at all. It seems wrong to > > display the upper half of a line in one column (or region, or page) > > and the lower half on the next. And I'm sure many > > designers/photographers would object to their images being sliced and > > diced. > > We discussed both options and concluded that it's better to default to > "no dataloss". In some cases (say, an illustrative photograph), it's > not a big deal if half the image doesn't show up. But in others (a > graph, a map, a diagram) it's much more important that the image be > entirely present, even if it is broken across two pages because it > won't fit on one page. I can see the need for both cases, although my default would be to clip -- my mind is not able to splice the stripes together and I would most likely misread any sliced diagram. And sliced line boxes makes my head hurt even more. BTW, The issue was first reported for SVG: https://code.google.com/p/chromium/issues/detail?id=260071 > (We do require that you try to keep it together, just as if break-inside: > avoid had been specified! So the break will only be introduced if there > would otherwise be dataloss. If you can push it to the next page and not > introduce a break, then you must do that.) The above text is much more clear than the current spec. If this is what the spec attempts to say, I suggest using the above text. > > However, if do allow break points inside line boxes and/or images, we should > > probably have a way of turning slicing off. > > Perhaps a 'break-inside: forbid' value? That would prevent breaking and > require the item to clip at the edge of the fragmentainer? I think it can be expressed without adding a new value. We could simply say: break-inside: avoid; /* prohibits slicing */ break-inside: auto; /* allows slicing */ > My concern > is that in most cases where we are running into this problem, it's because > the author didn't think about their design very carefully. For example, > s/he could have specified > > @media print { > max-height: 100vh; > max-width: 100vh; > } Yes, this would force the image (or something) over to the next column. Possibly leaving the previous column with only one line of text, thereby wasting white space. > in order to make sure the item fits on a page. Or do something else. > I'm having trouble thinking of a case where the author would actually > want the image to clip at some random point depending on the paper/ > ereader/screen size. If the image isn't central to the text, and is clickable if you really want to see it, and you don't like seeing pages that are mostly wasted. I agree that clipping images in random locations is not optimal. But often more optimal than confusing users with images sliced in random locations. -h&kon Håkon Wium Lie CTO °þe®ª howcome@opera.com http://people.opera.com/howcome
Received on Tuesday, 27 January 2015 10:20:21 UTC