W3C home > Mailing lists > Public > www-style@w3.org > August 2003

[CSS21]-relevant: Opera-bug 122147 (font-sizes)

From: Jörg Hartmann <jhartmann@aquilacoop.de>
Date: Sat, 2 Aug 2003 21:39:17 +0200
To: "'Håkon Wium Lie'" <howcome@opera.com>
Cc: <www-style@w3.org>
Message-ID: <007f01c3592d$c5882460$b97ba8c0@PAQUNB01>
Brief summary of the problem encountered:


Opera switching from one font-size-bug to another ...


How severe is the problem?



In what part of Opera does it occur?



What URL triggers this bug, if any?

Build your own CSS-absolute-font-sizes-page; or search Google for common
absolute-CSS-font-size using sites ...


Describe the bug in detail

Within Opera 7.11 you changed from emulating the IE5.x-behaviour for
CSS-using pages with absolute font-size-property-values to the
Mozilla-behaviour. Right?

Yes, it was a bug within IE's CSS-implementation not to set "medium" (but
"small") as "initial" value of the font-size-property. But no, it was not a
bug to make {font-size: small;} equivalent of font size="3" and {{font-size:
medium;} equivalent of font size="4". It is rather a bug both within Mozilla
(and latest IE/Opera) and within Todd Fahrner's CSS2.1-proposal to think
that "medium" would be equivalent to "normal" (which it is neither
semantically nor logically, it's nothing more than "in the middle") alias
font size="3". Both "medium" and "initial" do say nothing about being
"normal". It's just out of any logic to give 3 sizes below "normal" alias
"the size in which long texts are displayed usually" (where it's simply
impossible to create 3 sizes that are both still readable and of visible
size-difference) but only 3 sizes above "normal" (which makes it impossible
to creaty e.g. well-structured science-publications or math-typogrophy when
using absolute font-size property values).

So instead of switching from an IE-bug-emulation to a
Mozilla-/Todd-Fahrner-bug-emulation you should:
1) behave logically -
1a) make {font-size: medium;} the initial value which both CSS1 and CSS2 ak
for, but don't think this would mean medium=normal=font size="3",
1b) instead make (again) medium=4 and small=3 so that you have all
font-sizes within the range they belong and are needed for stuctured texts,
2) tell your guy(s) within the w3c-style-working-group (namely Håkon Wium
Lie <howcome@opera.com>) that Todd Fahrner's font-size-workaround proposal
2a) wrong, illogical and counter-productive in the
structured-(x)html-practice (there's simply no really visible difference
between font-sizes xx-small, x-small, and small; at the same time there is a
forth above-normal-size missing for highly-structured documents and
math-typography, and the visible difference between medium, large, x-large,
and xx-large is _too_ big),
2b) while the proposal is also a big time-(and resources-)waste and simply
adds further confusion, since any problems that arose from the difference
between IE/Opera's and Mozilla's traditional behaviours/CSS-implementations
can be completely solved by just spelling out clearly that small=3 and
medium=4 (which leaves medium=initial unaffected and unchanged since
"initial" is totally different from "normal" - both in logic and semantics;
initial is just the inherited value for an unset/unaltered property).
2c) So please tell Håkon and his friends that CSS 2.1's
January-28th-Working-Draft has a rather _bad_ and completely unnecessary
workaround within its subsection "15.7 Font size: the 'font-size' property"

Bold remark: This is _not_ personally against Todd Fahrner (or anyone else)
who may be a great guy. (I just don't know him.) It's just about
reasonability and requirements of visual differenciation within structured


Describe the steps needed to reproduce this bug

1. Build four stylesheets,

a) one emulating the old IE-/Opera-implementation (IE-bug) of CSS1/CSS2
(small=initial, small=3, medium=4, so that _above_h1=xx-large=7,
h1=x-large=6, h2=large=5, h3=medium=4, body=p=h4=small=3,
h5=code=...=x-small=2, h6=xx-small=1),

b) one emulating the old Netscape-/Mozilla-tradition (medium=initial,
small=2, medium=3, so that there's _nothing_ above h1 --and no
7-equivalent--, h1=xx-large=6, h2=x-large=5, h3=large=4, body=p=h4=medium=3,
h5=code=...=small=2, h6=x-small=1, _below!_h6=xx-small=_below!_1),

c) one emulating Todd Fahrner's proposal (see
http://www.w3.org/TR/CSS21/fonts.html#font-size-props - x-small _between_
h6=1 and h5=2, _nothing_ above h1, _no equivalent of font size="7",
_completely different_ percentage-steps within the size-interval leading to
visual confusion),

d) and one implementing straight logic (medium=initial, small=3, medium=4,
which also results in initial=4 so that CSS: body {font-size: small;} would
fit well into any longer-text-document's stylesheet, and of course this line
should be in this forth test-stylesheet, resulting in the same as the first
stylesheet with the only difference that CSS1/CSS2 --initial=medium-- is

2. Create a document with highly (and correctly, means headlines_level1=h1
etc.) structured text-content, e.g. a graduation, incl. math- or
chemistry-typography, using clean and only phrase tags (you know: p, h1-h6
and the like), no presentation-only .classes/tags (like "bigger"); at the
end create 7 seperate paragraphes using each of the 7 absolute font-size
property values specifically.

3. Apply all the four stylesheets to this document, one at a time, and watch
the results, especially look for the smaller (h6, xx-small ...) and bigger
(h1, xx-large ...) text-parts and for the visual differences between the
various structure-levels (and for their visual difference-interval).

4. As a bonus, search for a couple of common web pages/sites using CSS1/CSS2
with absolute font-size property values and look how they render when
a) IE's former bug
b) Netscape's/Mozilla's bug
c) Todd Fahrner's CSS2.1-proposal
d) straight and simple logic (see above) which complies both with the
CSS1/CSS2 specs and with common users' and common sites' (IE-)"tradition"
(read: with  reality) ...


Enter an e-mail address we can use to communicate with you regarding this
bug report

Received on Saturday, 2 August 2003 15:38:46 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:23 GMT