Javascript 为什么将项目添加到不可见元素会将这些项目设置为在;“风格”;属性

Javascript 为什么将项目添加到不可见元素会将这些项目设置为在;“风格”;属性,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我使用jquery和jscrollpane来显示一些带有自定义滚动条的数据 我面临的问题是,当用户浏览网站时,我将项目附加到UL,当用户点击按钮时,这些项目应该显示出来。问题在于,这些元素被附加到带有“display:none”的占位符div中时,jquery或jscrollpane中的某些内容将它们的样式属性设置为宽度为0,从而使它们不可见 你们知道这是什么原因吗 您的问题是display:none使元素对页面没有影响 相反,请尝试使用可见性:hidden,这只会使其在保持高度和宽度的情况下消

我使用jquery和jscrollpane来显示一些带有自定义滚动条的数据

我面临的问题是,当用户浏览网站时,我将项目附加到UL,当用户点击按钮时,这些项目应该显示出来。问题在于,这些元素被附加到带有“display:none”的占位符div中时,jquery或jscrollpane中的某些内容将它们的样式属性设置为宽度为0,从而使它们不可见


你们知道这是什么原因吗

您的问题是
display:none
使元素对页面没有影响


相反,请尝试使用
可见性:hidden
,这只会使其在保持高度和宽度的情况下消失。

不可见元素没有任何高度或宽度——在它们变为可见之前无法计算。即使我通过css设置了它们的高度和宽度?或者在附加它们时?请显示您正在使用的代码
.css()
应返回您指定的宽度属性,但
.width()
应返回计算的宽度,该宽度在不可见时不可用。@barmar?请对代码进行讨论。