我在旧版本的浏览器中遇到了一些flexbox gap(不工作)的问题,建议使用stylis. https://www.npmjs.com/package/stylis
我试图找出文档,但我挣扎。我想我需要创建一个定制插件?我遵循了一些情绪的文档,然后卡住了。有人能帮助我吗?
我的背景:使用Next.js和Mantine库(使用情感)
感觉我什么都试过了,我经验不足,所以我肯定错过了一些明显的东西。
我在旧版本的浏览器中遇到了一些flexbox gap(不工作)的问题,建议使用stylis. https://www.npmjs.com/package/stylis
我试图找出文档,但我挣扎。我想我需要创建一个定制插件?我遵循了一些情绪的文档,然后卡住了。有人能帮助我吗?
我的背景:使用Next.js和Mantine库(使用情感)
感觉我什么都试过了,我经验不足,所以我肯定错过了一些明显的东西。
2条答案
按热度按时间zfciruhq1#
Flex Gap不支持Safari版本〈14.1和iOS Safari版本〈14.5,但在mantine组件中使用(@mantine/core v5):
indicators: {gap: 8}
root: { gap: theme.fn.size({ size: spacing, sizes: theme.spacing }) }
-固定root: { gap: theme.fn.size({ size: spacing, sizes: theme.spacing }) }
-固定tabsList: {... if (variant === 'pills') { return { gap: theme.spacing.sm / 2, }; } ... }
-固定calendarBase: {gap: theme.spacing.md}
解决方法:组和堆栈组件是大多数Mantine组件的基础。Flex组件不使用全局配置样式,而是用于它们的演示,所以不要在代码库中使用它。
对于
fix
组和堆栈组件,将以下代码添加到提供程序中的config:已知限制
margin: auto
或背景时,或者当您需要在容器和下一个元素之间留出一些空间时,必须使用 Package 器div。当某些代码计算scrollHeight时,这也可能会有问题-它将比预期的间隙大小大(底部的间距,尽管它被父负值吸收,但仍将计算)。高级方法:你可以使用modernizr config给html元素添加自定义类,这样你就可以只对不支持flex gap的浏览器应用回退值。
modernizr-config.json
package.json
_文件.tsx
在此之后,像这样更改您的主题配置
在其他情况下也是类似的。所以,通过这个可选的回退,你总是在你的元素周围使用一个额外的 Package 器(一个div),它使用gap来获得最好的向后兼容性。我希望这对你有帮助!
eh57zj3b2#
flexbox差距属性在in older browsers上不起作用(正如你在评论中所说的),正如@apokryfos在评论中建议的,你可以使用边距。