Axel
Зарегистрирован: 19.04.2003 Сообщения: 15
|
Добавлено: Ср Мар 02 2005 15:09 Заголовок сообщения: Альтернатива min-width в IE |
|
|
Может кому пригодится мое решение.
Сразу хочу сказать, я не профессиональный дизайнер, более того мало разбираюсь в вопросах дизайна web-сайтов. В основном я пишу серверную часть для web-приложений. Так что не обессудьте если напишу про давно известные вещи. Но вот попал на проект, где пришлось самому заниматься дизайном, и встретился с такой проблемой: заказчику по зарез нужны были селекты (<SELECT>) у которых фиксирована минимальная ширина, меньше которой они не должны быть ни в коем случае, даже если селект пустой. Как известно, для этого следует использовать min-width, но IE min-width не поддерживает. Я потратил много времни на поиски решения, и так ничего подходящего не нашел. Наиболее близким к теме решением оказался следующий прием:
Код: |
<style>
select{ width: expression(document.body.clientWidth<100?'100px':'auto');
<style>
|
но он расчитан на случай, когда меняется размер окна браузера, и для меня не подошел.
Другого приемлемого решения я не нашел, и начал разбираться сам, что можно сделать. Пришел к следующему варианту:
Код: |
<style>
select{ width: expression(this.clientWidth<101?'100px':'auto');
<style>
|
Данный вариант работает правильно по крайней мере на IE6.
Обратите внимание на то, что проверяемое значение больше чем присваиваемое. Если сделать наоборот, то IE зацикливается на определении ширины.
Что скажете? Может кто заранее знает какие возможны проблемы в будущем при таком решении. |
|