我正在为移动设备滑动图库制作一个片段。你可以在这里看到它http://codepen.io/piatra/full/Edtlq
[].forEach.call(slides, function(s){
s.style.width = mainContainer.offsetWidth + 'px';
});
我的问题:因为内容由多个面板组成,所以它们需要位于右侧的同一行。面板的大小应为屏幕的 100%,因此您一次只能看到一个面板。但我不能将 css 中面板的大小设置为 100%,因为这会将每个面板推到自己的行上。
目前我正在用 JS 解决这个问题, ontouchstart
我得到了主父级的大小并将每张幻灯片设置为该宽度,但我不喜欢这个解决方案,因为当切换横向到纵向时,你必须触摸画廊才能更新,并且即使我在更改中添加了一个事件列表器,它仍然不是一个很好的解决方案。
我只能在 CSS 中实现这种效果吗?同一行上的面板库,宽度变量基于父级?
PS:Chrome 开发工具 > 模拟触摸事件
PPS:写了一个简化版本http://codepen.io/piatra/pen/usaHo 非常欢迎对此版本的任何改进:)
一个很好的例子是http://csscience.com/responsiveslidercss3/但是当添加一个新面板时你必须编辑 CSS