Steve
Firstly, I hope you'll allow me to say that I think that you are trying to
solve the wrong problem - you'll never get the site to look the same across
all possible set-ups. Add to that the fact that those users whose default
settings have been changed - thus spoiling your layout - have changed them
so that they can actually read the text despite their visual handicap.
Those who don't need to change the text size usually don't - and they'll see
your site (more or less) as intended; those who do need to change the text
size would rather have legibility at the cost of aesthetics.
OK - you sat through that so I'd better give some constructive suggestions
:-)
The one way to be absolutely sure that the font doesn't change is to use
images instead - very bad idea but it does achieve your aim.
The alternative is to mark your font descriptions in your CSS as !important
and define the size in pixels so that the fonts retain their size relative
to the images, which are also defined in pixels.
It goes like:
p { font-size: 10px !important }
The precedence is
1 User CSS overrides author CSS
2 Author !important overrides user CSS
3 User !important overrides author ! important
So, even with this, the user ultimately has control over the font size - and
I guess that they know best what's legible for them.
My twopenn'orth
--
PeterMcC
Hrm.
So you're saying that when you change the underlying dot pitch, the pixel
size changes. Strange one that :)
Righty, if you really must have text a certain number of *pixels* high, then
specify the size in *pixels* (Take the point size, divide by 72 and then
multiply by the DPI of your device)
Now the implications:
* The user with a 1600x1200 resolution doesn't stand a chance of reading
anything under about 15px.
* A user with a PDA or other low resolution device will find anything over
about 10px ridiculously large.
* NB Those two are mutually exclusive.
There is another solution, which scales a lot better...
Design Graphical elements at the highest DPI you intend to be used (so,
probably 120dpi), then size them all in points.
This scales better for different DPI devices, and also scales nicely for
visually impared users...
Remember, that, at the end of the day, HTML and CSS are only ever described
as hinting at how it will be presented -- there'll be times when people will
use non CSS browsers, or worse still, they'll override your CSS...