こんにちは
ご質問から、やりたいことは
- ベースとなるボタンのコンポーネント
Btn
を作り、
Btn
をベースにして、色が赤、および青のボタンコンポーネントを作る。
- 上記を styled-components で実現する。
という感じかなと思われました。
以下は上記を実現する一例です。
styles.js
javascript
1import styled from "styled-components";
2
3const Btn = styled.button`
4 font-size: 16px;
5 color: white;
6 padding: 8px;
7 border: solid 1px transparent;
8 border-radius: 8px;
9 cursor: pointer;
10 outline: none;
11`;
12
13export const RedBtn = styled(Btn)`
14 background-color: #ea0000;
15 :hover {
16 background-color: #880000;
17 }
18 :active {
19 background-color: #ff0000;
20 }
21`;
22
23export const BlueBtn = styled(Btn)`
24 background-color: #0000ea;
25 :hover {
26 background-color: #000088;
27 }
28 :active {
29 background-color: #0000ff;
30 }
31`;
32
33export const ButtonsWrapper = styled.div`
34 display: flex;
35 justify-content: space-around;
36 width: 300px;
37 margin-top: 50px;
38 margin-left: 50px;
39`;
40
index.js
jsx
1import React from "react";
2import ReactDOM from "react-dom";
3import { BlueBtn, RedBtn, ButtonsWrapper } from "./styles";
4
5const App = () => (
6 <ButtonsWrapper>
7 <BlueBtn>青いボタン</BlueBtn>
8 <RedBtn>赤いボタン</RedBtn>
9 </ButtonsWrapper>
10);
11
12ReactDOM.render(<App />, document.getElementById("root"));
13
以上、参考になれば幸いです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/04/18 10:55