* The subset of CSS we support has been thoroughly tested. There is no
bug here.
* XXE natively supports "display:marker;" and not "list-style-type:XXX;"
"list-style-type:XXX;" is automatically translated to blocks and
generated content having "display:marker;".
That's why historically all our CSS (but DITA's) use "display:marker;"
and not "list-style-type:XXX;".
We also recommend to use blocks and generated content having
"display:marker;" rather than "list-style-type:XXX;" because this is
*more* *precise* (for example, when you want a perfect alignment
whatever the kind of list).
* When XXE automatically translates "list-style-type:XXX;" to blocks and
generated content having "display:marker;", it *adds* the following NNN
(+5px=default marker offset) values to "li { margin-left: MMMex; }"
- Width of the bullet for itemized lists.
- 4ex for decimal and upper-alpha.
- 3ex for lower-alpha.
- 5ex for lower-roman
- 6ex for upper-roman.
This explains the different levels of indentation you can see. This is
clearly not a bug, but we'll nevertheless use a fix 6ex for ordered
lists starting from next release, because this seems to disturb you (and
hence this generates support requests, something we always try to avoid).
---
PS: Note that the CSS 2 standard says: ``The more general of the two
mechanisms is new in CSS2 and is called markers. The more limited
mechanism involves the list properties of CSS1. The list properties give
authors quick results for many common ordered and unordered list
scenarios. However, markers give authors precise control over marker
content and position.''
Benoit Maisonny wrote:
>
> Given the following XML extract containing 5 lists:
>
> <ul>
> <li>text</li>
> </ul>
> <ol class="Lower-Alpha">
> <li>text</li>
> </ol>
> <ol>
> <li>text</li>
> </ol>
> <ol class="Upper-Alpha">
> <li>text</li>
> </ol>
> <ol class="Lower-Roman">
> <li>text</li>
> </ol>
> <ol class="Upper-Roman">
> <li>text</li>
> </ol>
>
> And the following CSS:
>
> ol[class=Lower-Alpha] { list-style-type: lower-alpha;}
> ol[class=Upper-Alpha] { list-style-type: upper-alpha;}
> ol[class=Lower-Roman] { list-style-type: lower-roman;}
> ol[class=Upper-Roman] { list-style-type: upper-roman;}
> li { margin-left: 6ex;}
>
> XXE positions the 5 types of list with a different indentation.
> Something like this:
>
> - text
> a. text
> 1. text
> A. text
> i.text
> I. text
>
>
> Would this be a bug in your CSS implementation or in my CSS?
>
> I am correcting the indentation by replacing this last CSS line above by
> the following:
>
> ul>li { margin-left: 6.6ex;}
> ol>li { margin-left: 2ex;}
> ol[class=Lower-Alpha]>li { margin-left: 2.9ex;}
> ol[class=Upper-Alpha]>li { margin-left: 2ex;}
> ol[class=Lower-Roman]>li { margin-left: 1.1ex;}
> ol[class=Upper-Roman]>li { margin-left: 0ex;}
>
> But even this is not perfectly aligned because the alignment slightly
> changes when I change the default font size (isn't the same font used
> for all list types? then 1ex should mean the same whatever the size)
>
>
> I see that in the XHTML CSS, you don't use list-style-type but
> counter(). Is this a workaround for a list-style-type issue?
>
>
> All this was done with XXE 3.8.1, but a quick test showed that 4.2.1
> also uses different indentations.
>