2009-09-18 57 views
8

我现在有有94%的宽度表,以下切换设置它:jQuery切换更改元素的宽度?我不希望它

$(document).ready(function(){ 

     $("#moreinfo").hide(); 

     $("#toggleinfo").click(function() { 
      $("#moreinfo").toggle('normal'); 
     }); 

    }); 

它切换正常,但只要你切换,宽度变得非常小,我不知道为什么。如果我删除hide()这是正确的宽度,但是一旦我开始切换宽度,宽度会自动调整大小。

刚试过下面的CSS太:

#moreinfo { width: 94% !IMPORTANT; } 

编辑:看来,当我切换它

EDIT2完全删除通过CSS应用的任何宽度:结束语内的另一个DIV的作品!不理想,但我猜不是一个不好的解决方案。

有什么办法可以制止这种情况吗?

回答

3

jQuery toggle()函数将您的目标元素('#moreinfo'在这种情况下)设置为display: block。这只是一个猜测,没有看到你的CSS或HTML,但我挑选的是,当它的显示属性发生变化时,表格被错误地定位或布局。

您可能可以通过将您的moreinfo元素包装到另一个div中来解决此问题display: inlineposition: relative?但这只是一个猜测。不同的浏览器显示相同的结果吗?