正如我在标题中提到的,当我使用样式组件时,我应该使用普通标签 html 吗?例如:
我的 div 在 Styled Component 中设置样式,如果里面有 ap 标签,我也应该设置这个 p 标签的样式吗?或者我可以只有一个普通标签和“样式组件标签”2 回答
3
我有时将两者混合。例如,
import React from 'react';
import styled from 'styled-components';
const Box = styled.div `
background-color: black;
padding: 2rem;
h3 {
color: orange;
}
p {
color: white;
}
`
export const InfoBox = () => {
return (
<Box>
<h3>Information</h3>
<p>An example of paragraph text</p>
</Box>
);
};
在这个例子中<h3>,and<p>都是普通的 html 标签,while<Box>是一个样式化的组件。在这个例子中你也可以看到,<h3>and<p>标签仍然可以用 css 设置样式(只要它们是 的子元素<Box>)。
于 2020-11-09T10:14:54.010 回答
0
styled-components你基本上一次只设计一个 html 元素或反应组件。
const StyledDiv = styled.div``;
const StyledMyComponent = styled(MyComponent)``;
这将创建并返回一个反应组件。每个 react 组件都有一个隐式childrenprop,因此您可以使用 yourStyledDiv来包装JSX 中的任何其他元素,这并不重要。
<StyledDiv>
<p>This is my p-tag text wrapped in my styled div-tag</p>
<StyledP>This is my styled p-tag text wrapped in my styled div-tag</StyledP>
</StyledDiv>
如果需要设置样式,则只需要样式 a <p>,否则无关紧要,因为子元素/组件可以是任何有效的 JSX 元素。
于 2020-11-06T01:29:30.390 回答