overflow-x:auto无效的可能原因:

(1)子元素用了浮动
(2)父元素自动换行了

解决方法:

父元素样式:

overflow-x: auto; // 水平方向内容溢出显示滚动条
width: 300px; // 根据实际情况设置宽
height: 30px; // 根据实际情况设置高
white-space: nowrap; // 不换行

子元素样式:

display: inline-block;
或者
display: inline;

记得子元素不要用float:left;即使给父元素添加类clearfix 清除浮动了仍然无效。

移动端简单示例效果:

在这里插入图片描述

示例代码:

Html:

<ul>
        <li>第一个哈哈</li>
        <li>第一个哈哈</li>
        <li>第一个哈哈</li>
        <li>第一个哈哈</li>
    </ul>

Css:

ul{overflow-x: auto;width: 300px;height: 30px;white-space: nowrap;}
ul::-webkit-scrollbar{width: 0px;height: 0px;} // 隐藏滚动条
li{list-style: none;padding: 2px 4px;background: rgba(1,1,1,.05);border-radius: 4px;margin: 0 6px 8px 0;display: inline-block;font-size: 12px;}
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐