2011-12-18 3 views
0

Я создал собственный виджет, в котором используется куча плавающих разделов, но у меня проблема с Internet Explorer. Немного поиграв, я обнаружил, что проблема заключалась в установке встроенного css.GWT setWidth и Internet explorer

У меня есть класс, расширяющий ComplexPanel, который устанавливает элемент в деление и предлагает кучу вспомогательных функций для установки различных встроенных CSS.

Если я добавлю, скажите, 3 деления, используя этот класс оболочки DIV, который все плавают влево, и установите значение 100px с помощью встроенного css (с помощью getElement(). GetStyle(). SetProperty()), тогда они действуют нечетный в IE8. (он отлично работает в IE9).

В принципе, ни один из встроенных CSS не подбирается. Использование инструментов разработчика показывает, что CSS существует, но не применяется. Если я отключу float (или ширину, если на то пошло) и включит его снова, используя инструменты разработчика, встроенный CSS будет поднят и будет работать по назначению.

Итак, как я могу сообщить IE8, что ему нужно повторно интерпретировать встроенный CSS для динамически генерируемых элементов?

+0

может дать мне тестовый пример или, может быть, код того, что вы сделали, потому что в вашем вопросе его НЕ указано, что именно происходит также попробуйте использовать дисплей: встроенный блок; и попробуйте увидеть ширину div: P – ShrekOverflow

ответ

1

У нас были проблемы с использованием setProperty() ... в ie8. Поэтому избегайте этого.

Попробуйте использовать один из предопределенных методов в стиле.

Попробуйте использовать getElement(). GetStyle(). SetFloat (Float.Left). и getElement(). GetStyle(). SetWidth (100, Unit.PX).