通常,当使用纯CSS时,我有一个样式表,其中包含:

html {
    height: 100%;
}

body {
    font-size: 14px;
}

在React项目中使用styled-components时,如何设置htmlbody标记的样式?我是否为此维护了一个单独的CSS文件?

推荐答案

当然,您可以通过一个<link>标记来维护一个单独的CSS文件,该文件包含在HTML中.

For v4:

使用createGlobalStyle个样式化组件.

import { createGlobalStyle } from 'styled-components'

const GlobalStyle = createGlobalStyle`
  body {
    color: ${props => (props.whiteColor ? 'white' : 'black')};
  }
`

<React.Fragment>
  <GlobalStyle whiteColor />
  <Navigation /> {/* example of other top-level stuff */}
</React.Fragment>

Pre v4:

Styled components还导出一个injectGlobal助手,以从JavaScript注入全局CSS:

import { injectGlobal } from 'styled-components';

injectGlobal`
  html {
    height: 100%;
    width: 100%;
  }
`

更多信息请参见API documentation

Reactjs相关问答推荐

如何将google地址lat收件箱设置为输入值?

从另一个组件更改组件中const的状态

滚动事件监听器在Next.js客户端组件中不触发

后端关闭时如何在REACTION AXIOS拦截器中模拟数据?

无法从正在使用Reaction的Electron 商务store 项目中的购物车中删除项目

使用下一步中的路由/导航不会立即加载路由

当useEffect和onClick处理程序都调用useCallback函数时,有没有办法对useEffect产生额外的影响?

useRef()的钩子调用无效

如何删除 bootstrap 手风琴上的边框

如果我使用 formik,如何在嵌套对象中写入正确的值?

如何根据ReactJS中元素列表中的布尔值仅显示一次值

如何将 npm 包添加到我的 Vite + React 应用程序中?

无法通过react 路由中的链接传递信息

使用jest如何覆盖对象的模拟?我正在使用`jest.mock()`来模拟对象,并希望 for each 测试用例覆盖模拟.

如何更新redux状态存在的输入框

Primereact 的日历组件在每个月 12 日之后使用非唯一键生成

MUI - ButtonGroup fullWidth 条件屏幕大小不起作用?

将路径数组传递给Route会引发错误

在 redux 工具包中使用 dispatch 发送多个操作

如何从另一个切片中的不同切片获取状态并对其进行处理?