[Bug 17770] New: i18n comment 20 : list item marker display and position

https://www.w3.org/Bugs/Public/show_bug.cgi?id=17770

           Summary: i18n comment 20 : list item marker display and
                    position
           Product: HTML WG
           Version: unspecified
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: normal
          Priority: P3
         Component: other Hixie drafts (editor: Ian Hickson)
        AssignedTo: ian@hixie.ch
        ReportedBy: contributor@whatwg.org
         QAContact: public-html-bugzilla@w3.org
                CC: ian@hixie.ch, mjs@apple.com,
                    fantasai.bugs@inkedblade.net, mike@w3.org,
                    public-i18n-bidi@w3.org, ehsan@mozilla.com,
                    aharon.lists.lanin@gmail.com


This was was cloned from bug 10824 as part of operation convergence.
Originally filed: 2010-09-29 13:01:00 +0000
Original reporter: i18n bidi group <public-i18n-bidi@w3.org>

================================================================================
 #0   i18n bidi group                                 2010-09-29 13:01:04 +0000 
--------------------------------------------------------------------------------
Comment from the i18n review of:
http://dev.w3.org/html5/spec/

Comment 20
At http://www.w3.org/International/reviews/html5-bidi/
Editorial/substantive: S
Tracked by: AL

Location in reviewed document:
undefined [http://dev.w3.org/html5/spec/spec.html#contents]

Comment:This is a part of the proposals made by the "Additional Requirements
for Bidi in HTML" W3C First Public Working Draft. For a full description of the
use cases, please see 
http://www.w3.org/International/docs/html-bidi-requirements/#lists
[http://www.w3.org/International/docs/html-bidi-requirements/#lists]
. Here is the proposal made there:

The HTML specification should state that, by default, the markers of all
"list-style-position:outside" items should disregard the list item element's
computed direction, using the list element's computed direction instead for the
marker's display and positioning.

CSS will provide means to control this. If the CSS default in this respect must
differ, the default stylesheet should achieve the default behavior specified
above.

Furthermore, the list marker text will be directionally isolated from the list
item text, appearing in its own UBA paragraph.
================================================================================
 #1   Maciej Stachowiak                               2010-09-29 16:26:11 +0000 
--------------------------------------------------------------------------------
Seems like this should be defined in CSS, not HTML. Ideally the CSS default
would be the desired behavior. It could be rather confusing if HTML had to
override the CSS default. Has this feedback item been submitted to the CSS WG?
================================================================================
 #2   Ehsan Akhgari [:ehsan]                          2010-10-01 23:29:51 +0000 
--------------------------------------------------------------------------------
fantasai should know...
================================================================================
 #3   fantasai                                        2010-10-02 04:29:26 +0000 
--------------------------------------------------------------------------------
I actually worked with i18n on this comment. The default behavior cannot be
different from what is in CSS2.1, which is to place the marker based on the
directionality of the list item. We already have full interop on this behavior,
and there are non-list use cases for marker for which it is appropriate.

It's reasonable to add controls for for this in CSS3 Lists, however, so when
that happens i18n is asking that this behavior be specified for the default UA
stylesheet.
================================================================================
 #4   Aharon Lanin                                    2010-10-06 18:22:35 +0000 
--------------------------------------------------------------------------------
Right, but the HTML spec should also describe the expected behavior without
reference to CSS, since HTML theoretically is still supposed to work without
CSS.
================================================================================
 #5   Maciej Stachowiak                               2010-10-07 15:16:27 +0000 
--------------------------------------------------------------------------------
(In reply to comment #4)
> (In reply to comment #3)
> > I actually worked with i18n on this comment. The default behavior cannot be
> > different from what is in CSS2.1, which is to place the marker based on the
> > directionality of the list item. We already have full interop on this behavior,
> > and there are non-list use cases for marker for which it is appropriate.
> > 
> > It's reasonable to add controls for for this in CSS3 Lists, however, so when
> > that happens i18n is asking that this behavior be specified for the default UA
> > stylesheet.

Is there reason to believe HTML could change the default behavior safely, even
though CSS cannot?

> 
> Right, but the HTML spec should also describe the expected behavior without
> reference to CSS, since HTML theoretically is still supposed to work without
> CSS.

HTML5 does not have any rendering requirements, since it is a
device-independent technology and a conforming implementation could render very
differently from what is typical, or not at all. In the rendering section, it
does describe a recommended default rendering, based entirely on CSS. It
doesn't have an alternate description of rendering in non-CSS terms.
================================================================================
 #6   fantasai                                        2010-10-08 08:32:46 +0000 
--------------------------------------------------------------------------------
> Is there reason to believe HTML could change the default behavior safely, even
> though CSS cannot?

Yes. The case affected here is fairly rare, and in most cases the current
rendering is awkward and has to be worked around by use of <span> or <div> tags
inside the <li>. While I don't have any data for you, it seems likely that
content-compatibility is not a concern here.

For CSS, the argument for not changing is that we have full interop on the
current initial value, and since the behavior is useful for non-list-item
cases, it does not make sense for us to attempt to change all implementations.
It makes more sense for us to introduce a switch in CSS3, and suggest that the
new value be used by default for <li> items. (The CSSWG already has formal
resolutions responding to this issue that we will not alter the behavior
specced in CSS2.1.)

I agree that this is not an HTML5 spec issue except insofar as the new value
should be adopted in the recommended CSS defaults once it is specced out. So
imo fixing this depends on an update to CSS3 Lists.
================================================================================
 #7   Maciej Stachowiak                               2010-10-08 17:12:18 +0000 
--------------------------------------------------------------------------------
If the "we already have full interop" argument has weight, then surely it also
applies at the HTML level. Or are there implementations that handle <li> in
some way other than the CSS default for list markers?
================================================================================
 #8   Ian 'Hixie' Hickson                             2010-10-12 10:03:34 +0000 
--------------------------------------------------------------------------------
Status: Rejected
Change Description: no spec change
Rationale: HTML explicitly doesn't define rendering except by reference to CSS,
which applies whether or not the browser actually implements CSS — the spec
says "User agents that use other presentation mechanisms can derive their
expected behavior by translating from the CSS rules", where "expected to" is
the normative equivalent of "must" in that section. So as far as I can tell
this is all already defined, and if it's not it's a CSS problem.
================================================================================
 #9   Aharon Lanin                                    2010-11-14 14:12:03 +0000 
--------------------------------------------------------------------------------
Granting that the HTML spec does not need to describe the rendering, we will
still need the default style sheet change, which is a matter for the HTML spec.

I can not at present provide the final form of the desired change because the
CSS Styles modules has yet to include the new feature, but the proposal was
received favorably by the CSS WG face-to-face at TPAC and the feature should be
added soon.

The proposed default style sheet change would apply only to li elements, and
would have no visible effect on those that have the same direction as the list.
It would indeed change the rendering of those items that have the opposite
direction, but this is ok from the point of view of backward compatibility
because by default, such lists are currently rendered unacceptably poorly, with
the marker displaying only partially or not at all.
================================================================================
 #10  Ian 'Hixie' Hickson                             2010-11-14 22:06:45 +0000 
--------------------------------------------------------------------------------
So what will the change be? Right now we don't set 'list-style-position' at
all, we just rely on the default. Isn't that the preferred behaviour? i.e.
shouldn't we just change CSS' default?
================================================================================
 #11  Ian 'Hixie' Hickson                             2010-11-14 22:09:57 +0000 
--------------------------------------------------------------------------------
Status: Did Not Understand Request
Change Description: no spec change
Rationale: Not sure what to change. Reopen the bug if there is a specific
change requested.
================================================================================
 #12  Aharon Lanin                                    2010-11-15 08:00:29 +0000 
--------------------------------------------------------------------------------
(In reply to comment #10)
> So what will the change be?

What I have proposed on the CSS list is:

li {
  list-style-position:outside-parent;
  text-align: match-parent;
}

This would have no visible effect on list items that have the same direction as
the list. It would indeed change the rendering of those items that have the
opposite direction, but this is ok from the point of view of backward
compatibility because by default, such lists are currently rendered
unacceptably poorly, with the marker displaying only partially or not at all.

The list-style-position change has been favorably discussed by the CSS WG, but
the outside-parent value has yet to be actually added to the CSS Lists spec.
The match-parent value for text-align has already been added to the CSS Text
module, but this part of the proposed change to li has yet to be discussed by
the CSS WG. Thus, neither change can actually be done in the default style
sheet yet. I will reactivate this bug when that changes.

> Right now we don't set 'list-style-position' at
> all, we just rely on the default. Isn't that the preferred behaviour? i.e.
> shouldn't we just change CSS' default?

See comment 6 for fantasai's explanation of why it would be against CSS WG
policy to change the default for list-style-position, but is ok by them if it
is done in the default style sheet.

Of course, the text-align change just for li can only be done in the default
style sheet.
================================================================================
 #13  Aharon Lanin                                    2011-07-17 14:31:24 +0000 
--------------------------------------------------------------------------------
(In reply to comment #12)
> (In reply to comment #10)
> > So what will the change be?
> 
> What I have proposed on the CSS list is:
> 
> li {
>   list-style-position:outside-parent;
>   text-align: match-parent;
> }
> 
> This would have no visible effect on list items that have the same direction as
> the list. It would indeed change the rendering of those items that have the
> opposite direction, but this is ok from the point of view of backward
> compatibility because by default, such lists are currently rendered
> unacceptably poorly, with the marker displaying only partially or not at all.
> 
> The list-style-position change has been favorably discussed by the CSS WG, but
> the outside-parent value has yet to be actually added to the CSS Lists spec.
> The match-parent value for text-align has already been added to the CSS Text
> module, but this part of the proposed change to li has yet to be discussed by
> the CSS WG. Thus, neither change can actually be done in the default style
> sheet yet. I will reactivate this bug when that changes.
> 
> > Right now we don't set 'list-style-position' at
> > all, we just rely on the default. Isn't that the preferred behaviour? i.e.
> > shouldn't we just change CSS' default?
> 
> See comment 6 for fantasai's explanation of why it would be against CSS WG
> policy to change the default for list-style-position, but is ok by them if it
> is done in the default style sheet.
> 
> Of course, the text-align change just for li can only be done in the default
> style sheet.

(In reply to comment #10)
> So what will the change be?

CSS Lists Level 3 has accepted the position that the CSS default,
list-style-position:outside, will now mean that the marker position is
dependent on the list element direction, not the list item direction. (Backward
compatibility was decided not to be a factor because browser behavior was not
interoperable anyway.)

It would still be best if the HTML5 default style sheet had

li {
  text-align: match-parent;
}
================================================================================
 #14  fantasai                                        2011-07-17 17:55:19 +0000 
--------------------------------------------------------------------------------
Actually, that decision hasn't undergone CSSWG review; it's so far just Tab's
proposal. (I think the list-style-position definition will undergo changes as
it gets reviewed more closely by various members of www-style. It is not stable
yet.)
================================================================================
 #16  Ian 'Hixie' Hickson                             2011-08-06 03:27:08 +0000 
--------------------------------------------------------------------------------
Hey Tab, can you look at this and let me know what you think the right thing is
here? Thanks. Reassign to me if you think something needs to change.
================================================================================
 #17  Michael[tm] Smith                               2011-11-20 18:21:27 +0000 
--------------------------------------------------------------------------------
This bug is waiting on further action from Tab.

(In reply to comment #16)
> Hey Tab, can you look at this and let me know what you think the right thing is
> here? Thanks. Reassign to me if you think something needs to change.
================================================================================
 #18  Tab Atkins Jr.                                  2011-11-21 21:27:58 +0000 
--------------------------------------------------------------------------------
I'm waiting on review of the Lists spec in the CSS group before asking for a
change to the HTML default style sheet.  This section of the Lists spec hasn't
been vetted by the people who'd be implementing it yet.
================================================================================

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

Received on Friday, 13 July 2012 17:58:29 UTC