переполнение не работает для элемента div jquery

я использую тег div, который находится внутри элемента td. Я получаю значения времени выполнения от dwr [direct web remoting], который использует вызовы ajax и устанавливает высоту и ширину элемента div. Установка и получение значений из класса java в javascript в jquery работает. При установке ширины и высоты в firefox всегда отображается полоса прокрутки, даже если содержимого нет. Я пробовал с параметрами css overflow: auto, но бесполезно. Также он хорошо работает в IE 9+.

$("#idofDiv").resizable();
        $("#idofDiv").resizable({
            start: function(e,ui){
            },
            resize: function(e,ui){
            },
            stop: function(e,ui){
            var newWidth = $("#idofDiv").width();
                var newHeight = $("#idofDiv").height();
                JavaClass.setWWidth(newWidth.toString());
                JavaClass.setWHeight(newHeight.toString());
                $("#idofDiv").width(parseInt(newWidth));
                $("#idofDiv").height(parseInt(newHeight));
            }
        });

В приведенном выше коде при изменении размера тега div я сохраняю значения в сеансе, используя DWR. Он работает нормально. В элементе div, если содержимое превышает, должна отображаться полоса прокрутки. Но в Mozilla полоса прокрутки отображается каждый раз, но в IE она работает нормально. Я использовал overflow: auto для переполнения содержимого. Любая помощь будет оценена.


person Shriram    schedule 23.05.2014    source источник


Ответы (1)


Это может быть связано с тем, что свойство display элемента TD по своей сути установлено на table-cell, а не на block. Вы можете попробовать добавить следующие правила css:

#table{
    table-layout:fixed;
    overflow:hidden; 
    white-space: nowrap; 
}

Дополнительные сведения см. в этом сообщении.

person Chankey Pathak    schedule 23.05.2014