2012-05-04 3 views
0

Я пытаюсь использовать jQuery для изменения размера всплывающего окна, чтобы оно соответствовало его содержимому.Ширина: Авто не работает для IE8

В Chrome и IE9, я использую

$(windowSelector).css('width', 'auto'); 

и его все отлично.

Но в той же строке в IE8 всплывающее окно растягивается по экрану, по ширине.

Означает ли кто-нибудь какой-либо способ обойти это?

+1

Можете ли вы привести пример в jsfiddle? – jeroen

ответ

0

width:auto; - ширина по умолчанию для всех элементов. Единственным контекстом, который имеет смысл, является сброс ширины, заданной в другом месте. Он не устанавливает ширину элемента по ширине дочерних элементов.

IE устанавливает параметр со 100%, скорее всего, потому что у него нет родительского элемента для ограничения ширины (по умолчанию для элементов уровня блока). Ширина авто, примененная к встроенному элементу, ничего не сделала.

Чтобы сделать что-то по ширине своих детей, вам нужно будет получить высоту и ширину с помощью JavaScript и установить его на родительский элемент.

1

Возможно, вы захотите попробовать следующий код, не указав более подробные сведения, которые он может не делать, что вы ожидаете от него (также не работает в IE7).

$(windowSelector).css('display', 'inline-block'); 
Смежные вопросы