Re: Revising text wrapping, line breaking, and white space properties in CSS3 (CSS3 Text: 6 and 7)

*fantasai* <fantasai.lists@inkedblade.net>:
>
> The line-breaking and white space properties in CSS3 Text CR are
>    - too many
>    - too convoluted
> to be efficient and understandable in CSS.

I couldn't agree more.

> Hyphenation
>
> CSS3 Text:
>    word-break-inside: none | hyphenate
> XSL:
>    a slew of separate hyphenation controls, see spec
> Proposed:
>    hyphenation: none | auto

A future version of CSS should also accept 'url()' for a hyphenation  
dictionary.

> Text Wrap
>
> CSS3 Text:
>    wrap-option: wrap | no-wrap | soft-wrap | emergency
> WinIE:
>    word-wrap: normal | break-word
>    [wrap / no-wrap settings given with 'white-space']
> Proposed A:
>    wrap-option: wrap | no-wrap | character-wrap | force-wrap

Sounds to me more intuitive than the current draft, if nothing else. To  
name a property 'something-option' seems a little odd, though, we don't  
have 'visibility-option' either.

> Proposed B:
>    text-wrap: wrap | nowrap | character-wrap
>    word-wrap: normal | break-word

I'm not sure whether A or B is better, though.

> Part II: White Space Handling
>
> CSS3 Text:
>    linefeed-treatment: auto | ignore | preserve | treat-as-space |
>        treat-as-zero-width-space | ignore-if-after-linefeed
>    white-space-treatment: ignore | preserve | ignore-if-before-linefeed |
>        ignore-if-after-linefeed | ignore-if-surrounding-linefeed
>    all-space-treatment: preserve | collapse

I've always thought these to be insane, but my last suggestions, that  
weren't as changing as yours, were rigorously rejected for XSL:FO  
compatibility.

> Proposed:
>    white-space-something: discard | preserve | [ collapse || [(...)] ]

This looks as if it was kind of a shorthand property dor  
'white-space-anotherthing' and 'white-space-collapse' with

    white-space-collapse: [ auto-collapse-breaks | space-collapse-breaks |
           zero-width-collapse-breaks | discard-breaks | preserve-breaks ]

> Part III: Shorthand
>
>    white-space: normal | pre | nowrap | pre-wrap | pre-line |
>                 force-wrap | pre-force-wrap | line-force-wrap

I've already expressed my dissatisfaction with 'nowrap' vs. 'pre-wrap' and  
the like once before. I proposed to change the grammar to make hyphens  
more or less voluntary. That would of course break backwards compatibility  
to a certain degree.

Received on Monday, 4 October 2004 23:46:33 UTC