在React应用程序中,我如何将CSS样式应用于由iframe加载的src内容?
我有一个加载外部内容的应用程序,但是样式非常过时,我想覆盖它。
以下示例:(请注意,我已使用一些虚拟数据替换了<iframe />
的 src
内容,但问题仍然存在。)
import React from "react";
import ReactDOM from "react-dom";
import "./styles.css";
class Frame extends React.Component {
componentDidMount() {
document
.querySelector("iframe")
.contentWindow.document.querySelector("h1#firstHeading").style.color =
"red";
}
render() {
return (
<iframe
title="How Can I overwrite the styles from the src content?"
src="https://en.wikipedia.org/wiki/Herbie_Hancock"
width="90%"
height="500px"
scrolling="no"
/>
);
}
}
function App() {
return (
<div className="App">
<Frame />
</div>
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
这里有一个 代码沙盒,展示了我的问题。
在这个沙盒的例子中,我想要将 h1#firstHeading
的颜色改为 红色
。