重复问题
- 我搜索了现有的问题
最新版本
- 我测试了最新版本
总结 💡
由于盒子提供了特定页面部分的包含,它主要支持直接使用布局属性,而无需使用“sx”。不幸的是,由于简洁的编码风格,我建议为组件的根添加“inset”作为属性,以避免开发人员处理单个属性“sx”,从而使代码看起来干净且快速。
示例 🌈
这个外部形状CSS在大约96.28%的用户客户端中得到了广泛支持,与Can I Use有关。
动机 🔦
这是一个简短的建议,用于将盒子放置在全屏背景或其他用途中。
<Box position="absolute" inset={0} />
实现这一点的一种方法是使用backdrop或使用带有方向侧属性的位置。
<Box position="absolute" top={0} bottom={0} left={0} right={0} />
另一种方法是将inset作为单独的属性“sx”中的属性,并将position absolute作为直接属性使用。
<Box position="absolute" sx={{ inset: 0 }} />
5条答案
按热度按时间ohtdti5x1#
感谢@muhamadzolfaghari的建议。我不确定这是否是一个足够强的理由来为此目的创建一个独立的 prop ,但我会把它留给其他维护者考虑。
vq8itlhq2#
当我在其他框架/库(如Tailwind)中寻找类似的功能时,我发现在<= version 2.*中有
inset-0
类处理四个方向的位置。由于当时Safari支持的inset零范围为零(2018年),因此将其转换为多个属性。top: 0; right: 0; bottom: 0; left: 0;
现在,在version 3.*中,
inset-0
类被转换为精确属性,正如新文档中提到的那样。因为96.28%的浏览器支持inset。inset: 0
5lhxktic3#
你好,muhamadzolfaghari。感谢你打开这个问题——对于这个
inset={0}
属性,你期望它生成什么样的CSS?a64a0gku4#
我希望有一个盒子,只支持内嵌(这里只包含两个,固定和绝对定位)。
因此,确切的CSS类应该是这样的:
或者正式定义
iq3niunx5#
我将把这个标签为"等待点赞",但我认为这似乎是一个更适合用户界面的简单定制,因为我们没有抽象太多CSS来真正证明添加一个属性是合理的。