стиль javascript.ширина не работает в Firefox с переходным типом документа

StackOverflow https://stackoverflow.com/questions/349861

Вопрос

У меня есть скрипт, который анимирует небольшой DIV, появляющийся на странице.Все это отлично работает в IE и в FF, если я удаляю DOCTYPE , но когда DOCTYPE является XHTML / Transitional, в Firefox ширина не меняется.

this.container.style.visibility = "visible";
alert("this.container.style.width before = " + this.container.style.width)
this.container.style.width = this.width;
alert("this.container.style.width after = " + this.container.style.width); 
this.container.style.height = this.height;

В IE и в FF без DOCTYPE первое предупреждение выдает 0, а второе - 320 (это ширина, установленная в другом месте кода).

в FF с типом ДОКУМЕНТА XHTML/Transitional оба предупреждения показывают 0.Есть какие-нибудь идеи, что здесь происходит?Я думаю, мне, возможно, потребуется явно задать позиции для DIVs в Transitional, но я не уверен.

Это было полезно?

Решение

Вы пробовали устанавливать:

this.container.style.visibility = "visible";
alert("this.container.style.width before = " + this.container.style.width);
this.container.style.width = this.width + 'px';
alert("this.container.style.width after = " + this.container.style.width);
this.container.style.height = this.height + 'px';

//Note the 'px' above

Я нахожу, что попытка задать ширину / высоту числа без единиц измерения может вызвать проблемы.

Другие советы

Вы можете использовать:

document.getElementById("td").style.visibility="hidden";
document.getElementById("td").style.display="none";

вместо свойства width.

Это работает!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top