电脑技术学习

CSS中 display 与 visibility 的区别

dn001

起因:

前几天在做一个图片无间隙滚动的效果,要利用到一个隐藏的层。

问题:

之间复制以前文字滚动的效果代码(文字滚动时无错误),结果发现页面被拉长了一倍,也就是隐藏的层。

解决:

查CSS手册后发现了隐藏内容原来是有区别的,一种是保留对象的物理空间,一种是不保留。

-------------------------------

display:none

CSS1 隐藏对象。与 visibility 属性的hidden值不同,其不为被隐藏的对象保留其物理空间

visibility:hidden

对象隐藏,与 display 属性不同,此属性为隐藏的对象保留其占据的物理空间。

但是因为使用了visibility:hidden,拉长的内容其实就是那个含有图片的DIV;而改用display:none后就正常了。刚刚还一直怀疑是高度设置的问题,没想到居然就是这么简单的一点内容,结果用了这么多的时间跟精力,唉……

作者:林小志; 点击进入作者个人博客梅义