Добрый день!
Имеем следующий код:
<table width="50%" border="0">
<tr>
<td>
<input type="text" name="somename" size="20" value="Some very very long text IN ENGLISH" style="width: 100%">
</td>
</tr>
</table>
Если value содержит очень длинный текст на английском (превышающий ширину окна),
то ширина поля выравнивается по ширине текста.
Таким образом поле раздвигается вправо.
Можно открыть Яндекс и набрать там длинный текст, нажать "Найти" — и результат увидите.
Если один из пробелов в value заменить на , то поле становится нормальным.
(Точнее оно выравнивается по ширине самого длинного участка без пробелов от начала строки.)
Если <input> не в таблице, то все работает, как надо.
Если в value есть хотя бы один русский символ, то все работает нормально.
Глюк наблюдается под IE6.
Под Оперой все нормально.
Кто-нибудь сталкивался?
Есть солюшены?
ДК
Здравствуйте, Аноним, Вы писали:
А>Добрый день!
А>Имеем следующий код:
А>А><table width="50%" border="0">
А><tr>
А><td>
А><input type="text" name="somename" size="20" value="Some very very long
text IN ENGLISH" style="width: 100%; position: absolute; ">
А></td>
А></tr>
А></table>
А>
лечим " position: absolute;"
Здравствуйте, marx paul, Вы писали:
А>>А>><table width="50%" border="0">
А>><tr>
А>><td>
А>><input type="text" name="somename" size="20" value="Some very very long
MP>text IN ENGLISH" style="width: 100%; position: absolute; ">
А>></td>
А>></tr>
А>></table>
А>>
MP>лечим " position: absolute;"
В этом случае поле "зависает" немного ниже своего нормального расположения, как раз над border`ом
Здравствуйте, geck, Вы писали:
G>В этом случае поле "зависает" немного ниже своего нормального расположения, как раз над border`ом
Да, да, видел.
Если интересно, вот как пролечил:
<!--[if IE]><div class="fix_ie_input"><![endif]-->
<input type="text" name="somename" size="20" value="Some text" style="width: 100%">
<!--[if IE]></div><![endif]-->
В классе fix_ie_input содержатся параметры корректировки.
ДК