Vuido中使用Flex布局时调整窗口导致元素错位怎么办?
我在用Vuido做桌面应用时,给主窗口加了个flex布局的导航栏,设置成居中排列。但当我拖动窗口变窄到一定宽度时,导航栏里的图标突然挤到下一行去了,明明设置了 nowrap 啊。
这是我的CSS代码:
.header-container {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
}
.header-item {
padding: 1rem;
white-space: nowrap;
}
我已经试过给父容器设置 min-width,调整图标间距,甚至加了overflow: hidden,但窗口缩到大约600px宽的时候还是会有元素溢出。有没有什么Vuido特有的解决方法?或者flex布局在桌面应用里有什么需要注意的地方?
如果还有问题,可能是 Vuido 的渲染特性导致,考虑用 media query 限制最小宽度。
flex-wrap: nowrap,但有时候元素的宽高计算还是会出问题,特别是桌面应用里窗口大小变化频繁。一般这样处理:给
.header-item加上一个固定的宽度,比如width: 40px;或者min-width: 40px;,让每个子元素都保持固定的尺寸,就不会被压缩到下一行去了。另外,Vuido里可以用
box-sizing: border-box;来确保 padding 不会影响元素的总宽度。完整代码可以这样:如果还有问题,可以试试给父容器加
overflow: visible;,有时候 hidden 会导致子元素被强制换行。不过 Vuido 特有的情况很少,基本按标准 CSS 的解决方法就行。希望这个方案能搞定你的问题!