|
|
|
| Медитирую тут над задачкой "изменяемый <SELECT>"... и в процессе обнаружил интересный баг:
<html><head>
<script>
var AR = new Array (), FS = 0;
onload = function f ()
{
var obj = document.getElementById ('el');
var t = obj.offsetHeight;
AR [t] = ((AR [t]) ? (AR [t] += ',') : '') + FS;
if (FS < 72) {obj.style.fontSize = ++FS + 'px'; setTimeout (f, 10)}
else
{
var z = new Array (), j = 0;
for (t in AR)
{
var x = AR [t].split (',');
var y = (x.length > 1) ? (x [0] + '-' + x [x.length - 1]) : AR [t];
z [j++] = '<tr><td align="right">' + y + '</td><td align="center">' + t + '</td></tr>\n'
}
with (document)
{
open ();
write ('<table cellpadding="4" cellspacing="0" border="1">\n');
write ('<tr><th>font-size, px</th><th>offsetHeight, px</th></tr>\n');
write (z.join ('\n') + '\n</table>');
close ();
}
alert ('fin');
}
}
</script>
</head>
<body>
<input style="font-family: 'MS Sans Serif'; font-size: 0px; padding: 0px" value="Input" id="el">
</body></html>
|
Обратите внимание на значение offsetHeight при размере шрифта 54px (и в MSIE, и в FF, и в Opera).
Вопрос актуален, ибо шрифт 'MS Sans Serif' для тега <INPUT> установлен в MSIE и FF по умолчанию (в Opera по умолчанию - Arial) | |
|
|