2021. 4. 16. 21:15ㆍFront-end Study/React.js
Latest update : 2021.04.16 - 수정 완료
React-Bootstrap
Bootstrap은
로 사이트가 나뉘어 있습니다.
<React 설치 + react-bootstrap 설치>
✔️bootstrap 설치 방법은 여러 가지가 있습니다. (react-bootstrap.netlify.app/getting-started/introduction/)
- Node.js 설치 (nodejs.org/ko/download/)
- (CRA)
npx create-react-app 프로젝트명 (or) yarn create react-app 프로젝트명
-> npm start
-> npm install react-bootstrap bootstrap (or) yarn add react-bootstrap bootstrap
npx create-react-app 프로젝트명
(or)
yarn create react-app 프로젝트명
(and)
npm start
(and)
npm install react-bootstrap bootstrap
(or)
yarn add react-bootstrap bootstrap
<Bootstrap 문법>
1. 설치
공식 홈페이지 react-bootstrap.github.io/
React-Bootstrap
The most popular front-end framework, rebuilt for React.
react-bootstrap.github.io
2. React-Bootstrap Component
공식 홈페이지 > Component 페이지 react-bootstrap.github.io/components/alerts/
tip) 원하는 검색어를 입력하세요.
대표적인 Component 예시
Navbars : react-bootstrap.netlify.app/components/navbar/#navbars
Jumbotron : react-bootstrap.netlify.app/components/jumbotron/#jumbotron
Buttons : react-bootstrap.netlify.app/components/buttons/
Cards : react-bootstrap.netlify.app/components/cards/
Dropdowns : react-bootstrap.netlify.app/components/dropdowns/
Forms : react-bootstrap.netlify.app/components/forms/
List groups : react-bootstrap.netlify.app/components/list-group/
Taps : react-bootstrap.netlify.app/components/tabs/
사용 예시
import { Navbar, Nav, NavDropdown } from 'react-bootstrap'
↓ 하단 Component들을 ↑ 위 import { } 내부에 추가해야 합니다.
<Navbar bg="light" expand="lg">
<Navbar.Brand href="#home">React-Bootstrap</Navbar.Brand>
<Navbar.Toggle aria-controls="basic-navbar-nav" />
<Navbar.Collapse id="basic-navbar-nav">
<Nav className="mr-auto">
<Nav.Link href="#home">Home</Nav.Link>
<Nav.Link href="#link">Link</Nav.Link>
<NavDropdown title="Dropdown" id="basic-nav-dropdown">
<NavDropdown.Item href="#action/3.1">Action</NavDropdown.Item>
<NavDropdown.Item href="#action/3.2">Another action</NavDropdown.Item>
<NavDropdown.Item href="#action/3.3">Something</NavDropdown.Item>
<NavDropdown.Divider />
<NavDropdown.Item href="#action/3.4">Separated link</NavDropdown.Item>
</NavDropdown>
</Nav>
...
tip1) css에서 이미지 수정이 필요한 경우
>>> react 구버전 : public 폴더에 넣고 (/image.png)으로 첨부하세요.
>>> react 17 버전 이상일 시 : src 폴더에 넣고 (./image.png)으로 첨부하세요.
tip2) transition 효과 : react-bootstrap.netlify.app/utilities/transitions/
tip3) Layout > Grid : react-bootstrap.netlify.app/layout/grid/
react-css tip) 모바일 우선 + 그리드 시스템 + 미디어 쿼리(반응형) : bootstrapk.com/css/
CSS · 부트스트랩
에 약간의 패딩과 수평 구분선이 있는 기본 스타일의 .table 클래스를 추가하세요. 그건 매우 불필요해 보이지만, 캘린더와 날짜선택기 같은 플러그인들을 위해 테이블이 널리 사용되는 것을 감
bootstrapk.com
-> 디자인도 하고 싶으시면 참고해서 빠르게 제작하실 수 있습니다. ↓ 하단 표/코드 등은 본 링크에서 부분적으로 가져온 내용입니다.
매우 작은 기기 모바일폰 (<768px) | 작은 기기 태블릿 (≥768px) | 중간 기기 데스크탑 (≥992px) | 큰 기기 데스크탑 (≥1200px) | |
그리드 적용 | 항상 | 분기점보다 크면 적용 | ||
콘테이너 너비 | 없음 (auto) | 750px | 970px | 1170px |
클래스 접두사 | .col-xs- | .col-sm- | .col-md- | .col-lg- |
컬럼 수 | 12 | |||
컬럼 너비 | Auto | ~62px | ~81px | ~97px |
사이 너비 | 30px (컬럼의 양쪽에 15px 씩) | |||
중첩 | 예 | |||
오프셋 | 예 | |||
컬럼 순서정하기 | 예 |
그리드 예시 1
.col- md-1 |
.col- md-1 |
.col- md-1 |
.col- md-1 |
.col- md-1 |
.col- md-1 |
.col- md-1 |
.col-md-1 | .col-md-1 | .col-md-1 | .col-md-1 | .col-md-1 |
.col-md-8 |
.col-md-4 |
||||||||||
.col-md-4 | .col-md-4 | .col-md-4 | |||||||||
.col-md-6 | .col-md-6 |
<div class="row">
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
<div class="col-md-8">.col-md-8</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
그리드 예시 2
. col-xs-* (or). col-md-* 를 추가하여 매우 작은 기기와 중간 기기 그리드 클래스들을 사용하세요.
<!-- 모바일에서 컬럼들이 하나는 꽉찬너비로, 다른 하나는 절반너비로 쌓이게 합니다 -->
<div class="row">
<div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<!-- 컬럼들은 모바일에서 50% 너비로 시작하고 데스크탑에서는 33.3% 너비가 됩니다 -->
<div class="row">
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<!-- 컬럼들은 모바일과 데스크탑에서 항상 50% 너비가 됩니다 -->
<div class="row">
<div class="col-xs-6">.col-xs-6</div>
<div class="col-xs-6">.col-xs-6</div>
</div>
그리드 예시 3
태블릿. col-sm-* 클래스
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div>
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>
<div class="row">
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
<!-- Optional: clear the XS cols if their content doesn't match in height -->
<div class="clearfix visible-xs-block"></div>
<div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div>
</div>
'Front-end Study > React.js' 카테고리의 다른 글
[React.js] 기초 - class로 component 만들기 (구문법) (0) | 2021.04.19 |
---|---|
[React.js] CRA 기초 - input/입력값받기/이벤트핸들러 (0) | 2021.04.19 |
[React.js] CRA 기초 - 설치/state/Component/props (0) | 2021.04.16 |