shift-direction

Dear XSL editors,

I am puzzled with the definition of the shift-direction.

In [7.35.7 "writing-mode"], the shift-direction for lr-tb writing-mode is
defined as bottom-to-top.

In [7.11.1 "alignment-adjust], the following mapping of the <length> value
to the baseline offset is established: "The offset is opposite to the
shift-direction if that value is positive and in the shift-direction if that
value is negative." It means that, for normal Latin text, positive values of
"alignment-adjust" shift the baseline down, and negative values shift it up.

In [7.37.22 "vertical-align"], <length> values for the vertical-align
shorthand are mapped directly to the "alignment-adjust" property; so one
could deduce that the negative value should raise the text, and the positive
value should lower it. However, in the citation from CSS2, the baseline
shift direction is said to be the opposite: "<length> - Raise (positive
value) or lower (negative value) the box by this distance."

I feel there's some inconsistency here. Isn't it strange that positive
values of alignment-adjust move the text down? This breaks the "least
astonishment" principle and contradicts CSS2 usage. Wouldn't it be more
natural to define alignment-adjust and similar properties as mere offsets
_in the same direction_ as the shift-direction axis? The semantics of the
axis name would then become more straightforward.

Best regards,

Nikolai Grigoriev
RenderX, Inc.

Received on Saturday, 26 August 2000 16:17:37 UTC