【发布时间】:2012-07-25 11:43:28
【问题描述】:
我正在尝试制作全屏幻灯片效果jsFiddle code here,但我对如何做到这一点有疑问。从我的示例小提琴中可以看出,我希望图片尽可能大而不失真(适合屏幕)。我还希望它垂直和水平居中。
水平居中在 css 中处理,但我不得不使用 JavaScript 进行垂直居中。
我的问题是:
- 有没有更好的方法来做到这一点(例如全部在 CSS 中)?
- 首次加载时,如果图片(在缩放之前)比视口宽,则在我的脚本计算视口高度时会出现滚动条。这意味着当我的脚本将 div 和 img 适配到窗口时,底部有一个白色的间隙,即滚动条的高度。我可以通过指定溢出来解决这个问题:隐藏,但这似乎有点解决方法。有没有更好的办法?切换图像会更好吗?
- 当我调整 div 的大小以使 div 比图像更宽时,我会在黑色 div 下看到一个白色部分,这会创建一个垂直滚动条。再次,我可以通过溢出来摆脱它:隐藏,但我不喜欢这种方法。我想知道它为什么存在以及如何摆脱它?
- 有时我可以使水平滚动条出现,并且当我调整大小时它会闪烁开/关。 overflow:hidden 解决了这个问题,但我想要一个更干净的解决方案。
- 有没有更好的编码方法,或者我的 jQuery/Javascript 可以进一步优化吗?
【问题讨论】:
-
您可能想使用 img{max-width:100%},这可以解决您的问题。滚动条问题。
-
你说得对,谢谢它确实解决了初始水平滚动条问题(2)
-
我确实找到了一种不使用 JavaScript 的方法,只使用 HTML 和 CSS3。见这里jsfiddle.net/Grezzo/AXEmZ
标签: javascript jquery html css onresize