flex常见的一个bug:部分区域无法触发popover关闭
demo预览:
https://sunzsh.github.io/vue-demos/#/tagsel-notclose
代码:
https://github.com/sunzsh/vue-el-demo/blob/master/src/views/tagsel-notclose.vue
今天这个BUG不起眼但是很好玩哈
大家看这里有一个标签选择的组件
然后呢他点击页面任何一个地方
是可以自动关闭的
但唯独是点这,大家看没有效果
其实原因也很简单
就是这个组件啊
他最外层的这个容器比较宽
大家看到这个位置
那为什么会这样呢
原因是啊
上面这个标签两个字和下边这个组件
现在采用的是纵向Flex布局实现的
大家看这里
但是呢由于flex布局
它默认的对齐方式采用的是这个stretch
默认的横向flex布局
里边的元素是等高的
而对于咱们这种纵向的flex布局
它里边的元素就是等宽的
所以解决这个问题也很简单
我们要把它改成这个flex-start就可以了
所以呢在这我们在这加一个
align-items等于
flex-start
好我们再来看一下它的宽度
大家看 标签是这么宽
下边组件这么宽
我们再来验证一下这个bug
张开点这
这样就解决了
最后更新于
这有帮助吗?