Element-UI el-col组件span值超过24后如何强制单行显示并添加水平滚动条?

Element-UI el-col组件span值超过24后如何强制单行显示并添加水平滚动条?

Element-ui的el-col组件在span属性值总和超过24时会自动换行。如果需要强制单行显示并添加水平滚动条,则需要放弃el-row和el-col组件的默认布局,改用flexbox布局。

核心问题在于el-row组件的默认换行行为。为了解决这个问题,我们将包含el-col组件的容器设置为flex布局,并禁用换行,从而实现强制单行显示。同时,使用overflow-x: auto属性添加水平滚动条,以便查看超出容器宽度的内容。

以下是一个修改后的代码示例:

<template>   <div style="display: flex; overflow-x: auto;">     <div class="el-col-wrapper">       <el-col :span="8"><div class="grid-content bg-purple">8</div></el-col>       <el-col :span="8"><div class="grid-content bg-purple-light">8</div></el-col>       <el-col :span="8"><div class="grid-content bg-purple">8</div></el-col>       <el-col :span="8"><div class="grid-content bg-purple-light">8</div></el-col>       <el-col :span="8"><div class="grid-content bg-purple">8</div></el-col>       <el-col :span="8"><div class="grid-content bg-purple-light">8</div></el-col>     </div>   </div> </template>  <style scoped> .bg-purple {   background: #d3dce6; }  .bg-purple-light {   background: #e5e9f2; }  .grid-content {   border-radius: 4px;   height: 30px;   display: flex;   justify-content: center; /* 居中显示数字 */   align-items: center; /* 居中显示数字 */   padding: 0 10px; /* 添加内边距 */ }  .el-col-wrapper {   display: flex; } </style>

在这个例子中,我们移除了el-row组件,并使用一个div作为容器,应用display: flex和overflow-x: auto样式。 el-col组件仍然用于设置列宽,但它们现在在一个Flex容器中水平排列,即使span值总和超过24也不会换行。 添加了.grid-content样式,使内容居中显示,并添加了内边距,使内容更易于阅读。 通过这种方法,可以有效地解决el-col组件span值超过24后强制单行显示并添加水平滚动条的问题。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享