Javascript 实现内容滚动的最简单方法
我有以下结构-:Javascript 实现内容滚动的最简单方法,javascript,css,Javascript,Css,我有以下结构-: HTML 第一部分 Elem1 Elem2 Elem3 ... 第二部分 Elem1 Elem2 Elem3 ... 第三部分 Elem1 Elem2 Elem3 ... 第一部分 第二部分 第三部分 CSS #container { float:left; } #controls { float:right; } 当我单击控件时,页面将移动到所选零件。这是标准行为。我想要的是页面保持不变,只有容器的内容移动。 最简单的方法是什么?可以用纯CS
HTML 第一部分
- Elem1
- Elem2
- Elem3 ...
第二部分
- Elem1
- Elem2
- Elem3 ...
- Elem1
- Elem2
- Elem3 ...
- 第一部分
- 第二部分
- 第三部分
#container {
float:left;
}
#controls {
float:right;
}
当我单击控件时,页面将移动到所选零件。这是标准行为。我想要的是页面保持不变,只有容器的内容移动。
最简单的方法是什么?可以用纯CSS实现吗?或者可能已经有一个代码片段我可以使用?
我的想法:
我可以为容器
设置溢出隐藏,并在单击时为带有JS的内容设置负边距顶部。这是正确的方法吗?我想你想要的是位置:固定,像这样:
#controls {
float:right;
position:fixed;
right:0;
}
是的,溢出
正是这样做的。如果将其设置为auto
,如果溢出,它将给出#container
自己的滚动条。但它需要指定的高度:
#container {
float:left;
height:600px;
overflow:auto;
}
如果您想使其100%成为页面的高度:
您需要将#容器设置为
position: absolute;
然后使用JS控制样式。元素顶部在真实页面上可能不止这些…@Pay4m可能不止这些在真实页面上…查找?是的,但请注意页面也会滚动-如果视口小于600px,则仅隐藏链接。600px就是一个例子,很明显,OP会将其更改为其规格。@oGeez它不起作用。单击part3
,您的#控件将不可见。@Hiral请参阅更新。如果用户希望div有自己的滚动条,那么它不太可能比视图端口大。