[英]React change font text color of all children inside div
我已经设置了类似这样的渲染功能
<div
dangerouslySetInnerHTML={{
__html: page.content.rendered
}}
/>
我从外部 api 获取页面作为道具, page.content.rendered
将是字符串形式的 html,如下所示:
<div>
<h2> this is title </h2>
<p> hello </p>
</div>
有没有办法改变 div 元素内所有子元素的文本颜色?
我尝试将 color: "somecolor" 添加到外部 div 元素,但没有任何改变。
<div style={{"color": "red"}}>
<h2> this is title </h2>
<p> hello </p>
</div>
您可以设置任何父元素的样式,它将应用于其子元素。 https://reactjs.org/docs/dom-elements.html#style
例如:
<div
style={{color:'red'}}
dangerouslySetInnerHTML={{
__html: page.content.rendered
}}
/>
有许多样式解决方案性能更好,并得到社区的大力支持: https : //reactjs.org/docs/faq-styling.html
JSX 中的样式与 HTML 中的样式相同,您可以在外部 CSS 文件中创建类并执行以下操作:
import './style.css';
<div className='.myClass'
dangerouslySetInnerHTML={{
__html: page.content.rendered
}}
/>
或者你可以做这样的内联样式:
<div style={{color:'red'}}
dangerouslySetInnerHTML={{
__html: page.content.rendered
}}
/>
在我看来,在 React 中使用内联样式非常奇怪。 我更喜欢导入 CSS 文件或使用像 Tachyons 这样的库并使用 JSX className。
您可以在此处的类似帖子中找到更多帮助。
我有一个类似的问题。 就我而言,我不得不将颜色从白色更改为黑色。 由于 html 内容已经指定了颜色,因此我无法仅使用 div 的样式属性来更改颜色
我不得不从 html 内容中删除颜色并使用 Js 添加黑色
如果内容已经有文本颜色,下面可以将文本颜色从白色更改为黑色
<div
dangerouslySetInnerHTML={{
__html: page.content.rendered.split("rgb(255,255,255)").join("rgb(0,0,0)")
}}
/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.