如何将供应商前缀应用于 reactjs 中的内联样式?
How do I apply vendor prefixes to inline styles in reactjs?
CSS React 中的属性不会自动添加其供应商前缀。
例如:
<div style={{
transform: 'rotate(90deg)'
}}>Hello World</div>
在 Safari 中,不会应用旋转。
我怎样才能做到这一点?
React 不会自动应用供应商前缀。
为了添加供应商前缀,请按照以下模式命名供应商前缀,并将其添加为单独的道具:
-vendor-specific-prop: 'value'
变成:
VendorSpecificProp: 'value'
所以,在问题的例子中,它需要变成:
<div style={{
transform: 'rotate(90deg)',
WebkitTransform: 'rotate(90deg)'
}}>Hello World</div>
值前缀不能以这种方式完成。例如这个 CSS:
background: black;
background: -webkit-linear-gradient(90deg, black, #111);
background: linear-gradient(90deg, black, #111);
因为对象不能有重复的键,这只能通过了解浏览器支持的键来完成。
另一种方法是对样式工具链使用 Radium。它的一项功能是自动添加供应商前缀。
我们在 radium 中的背景示例如下所示:
var styles = {
thing: {
background: [
'linear-gradient(90deg, black, #111)',
// fallback
'black',
]
}
};
我没有使用 react.js 的经验,但是看看 Lea Verou 的这个 js 库。它直接在 DOM.
中添加样式前缀
你可以这样使用:
https://github.com/cgarvis/react-vendor-prefix
自动为您的样式对象添加供应商前缀。
我实际上遇到了同样的问题,none 的反应前缀库完成了我想要的工作。所以我自己建了一个:
它还很年轻(今天早上建的),但我会维护它。希望对您有所帮助。
CSS React 中的属性不会自动添加其供应商前缀。
例如:
<div style={{
transform: 'rotate(90deg)'
}}>Hello World</div>
在 Safari 中,不会应用旋转。
我怎样才能做到这一点?
React 不会自动应用供应商前缀。
为了添加供应商前缀,请按照以下模式命名供应商前缀,并将其添加为单独的道具:
-vendor-specific-prop: 'value'
变成:
VendorSpecificProp: 'value'
所以,在问题的例子中,它需要变成:
<div style={{
transform: 'rotate(90deg)',
WebkitTransform: 'rotate(90deg)'
}}>Hello World</div>
值前缀不能以这种方式完成。例如这个 CSS:
background: black;
background: -webkit-linear-gradient(90deg, black, #111);
background: linear-gradient(90deg, black, #111);
因为对象不能有重复的键,这只能通过了解浏览器支持的键来完成。
另一种方法是对样式工具链使用 Radium。它的一项功能是自动添加供应商前缀。
我们在 radium 中的背景示例如下所示:
var styles = {
thing: {
background: [
'linear-gradient(90deg, black, #111)',
// fallback
'black',
]
}
};
我没有使用 react.js 的经验,但是看看 Lea Verou 的这个 js 库。它直接在 DOM.
中添加样式前缀你可以这样使用:
https://github.com/cgarvis/react-vendor-prefix
自动为您的样式对象添加供应商前缀。
我实际上遇到了同样的问题,none 的反应前缀库完成了我想要的工作。所以我自己建了一个:
它还很年轻(今天早上建的),但我会维护它。希望对您有所帮助。