例如:
需求:导航栏实现横向滑动,适应移动端,当滑动到最后时,图标隐藏
css实现滑动效果:
style样式:
.scrollContainer{overflow:auto}
.box{
display:box
display:-webkit-box//也可使用display:flex
height:"40px"
}
.box span{
display: block !important//这是重点!!
width:"60px",
height: "40px"
line-height: "40px"
text-align:center
}
<div class="scrollContainer">
<div class="box">
<span>HT</span>
<span>CTC</span>
<span>SLT</span>
<span>AET</span>
<span>LET</span>
</div>
</div>
js中实现滑动效果:
思路:
当(滑动的距离=总滑动宽度-可视宽度 || 滑动的距离>总滑动宽度-可视宽度)时,隐藏图标,相反显示
domElement.scrollLeft(滑动距离)
domElement.scrollWidth(总滑动宽度-可视宽度)
domElement.clientWidth(可视宽度)
初学HTML,遇到一个题需要将几张图放在一个边框里,并且需要横向拖动
想着很简单,直接在div中设置width、height。并添加属性“overflow:auto”。但实际运行是发现图片始终会换行,窗口只能上下滚动
后来找到问题的原因,是因为由于在div中直接添加图片,所以图片会适应该div的大小,从而自动换行。而要做到不换行的效果,则需要在div中嵌套一层div2,设置div2的width >div的width,由此保证:图片不会换行;在横轴方向溢出,从而出现横向滚动条。
如果是导航菜单可以使用ul无需列表来制作同时使用CSS中的float:left来控制li靠左浮动即可实现横向菜单
注意UL或UL的父级容器宽度必须大于所有li宽度的和
例如<style>ul {padding:0margin:0list-style:nonewidth:600pxheight:50pxline-height:50pxtext-align:center}ul li {width:100pxheight:50pxfloat:left}<style><ul><li>菜单项目1</li><li>菜单项目2</li><li>菜单项目3</li><li>菜单项目4</li><li>菜单项目5</li><li>菜单项目6</li><ul>