【发布时间】:2020-08-23 02:11:21
【问题描述】:
我有一个styled-component,我只想在屏幕尺寸大于 480 时才渲染它。我尝试通过获取对元素的引用并禁用它来做到这一点。但这没有用。我将display 属性设置为none,但按钮仍然存在,可以点击。
这是我的代码
console.log(window.screen.width);
if(window.screen.width <= 480) {
var a = document.getElementsByClassName("Button1")
...
...
...
...
}
return (
<>
<div className="control">
<Circle onClick={handleVideoToggle}>
<img src={video ? Video : VideoOff} />
</Circle>
<Circle onClick={handleAudioToggle}>
<img src={audio ? Mic : MicOff} />
</Circle>
<Circle onClick={handleScreenToggle}>
<img className = "Button1" src={screen ? Screen : ScreenOff} />
</Circle>
<Circle onClick={handleCallDisconnect}>
<img src={End} />
</Circle>
</div>
</>
);
};
export default Controls;
const
Circle = styled.div`
width: 45px;
height: 45px;
border-radius: 50%;
display: flex;
cursor: pointer;
:not(:first-child) {
margin-left: 20px;
}
`,
Image = styled.img`
max-width: 100%;
width: 45px;
margin: 0 auto;
`;
【问题讨论】:
标签: javascript html css reactjs styled-components