탐색, 경고, 팝오버 등을 만드는 재사용가능한 여러 화면 구성요소.
링크 목록을 보여주는 켜고 끌 수 있는 컨텍스트 메뉴. 드롭다운 자바스크립트 플러그인을 가지고 동작시킨다.
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu"> <li><a tabindex="-1" href="#">행동</a></li> <li><a tabindex="-1" href="#">다른 행동</a></li> <li><a tabindex="-1" href="#">여기에는 또 다른</a></li> <li class="divider"></li> <li><a tabindex="-1" href="#">따로 떨어진 링크</a></li> </ul>
드롭다운 메뉴만 보면 이것이 필요한 HTML 전부이다. 드롭다운을 켜고 끄는 링크나 버튼과 드롭다운 메뉴를 모두 .dropdown
안에 넣거나, position: relative;
를 선언한 다른 태그가 필요하다. 그리고 메뉴를 만들면 된다.
<div class="dropdown"> <!-- 드롭다운을 켜고 끌 링크나 버튼 --> <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"> <li><a tabindex="-1" href="#">행동</a></li> <li><a tabindex="-1" href="#">다른 행동</a></li> <li><a tabindex="-1" href="#">여기에는 또 다른</a></li> <li class="divider"></li> <li><a tabindex="-1" href="#">따로 떨어진 링크</a></li> </ul> </div>
메뉴를 오른쪽 정렬하고 하위 드롭다운를 추가한다.
드롭다운 메뉴를 오른쪽 정렬하려면 .dropdown-menu
에 .pull-right
를 더한다.
<ul class="dropdown-menu pull-right" role="menu" aria-labelledby="dLabel"> ... </ul>
링크를 비활성화하려면 드롭다운의 <li>
에 .disabled
를 추가한다.
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu"> <li><a tabindex="-1" href="#">일반 링크</a></li> <li class="disabled"><a tabindex="-1" href="#">비활성 링크</a></li> <li><a tabindex="-1" href="#">다른 링크</a></li> </ul>
몇가지 간단한 마크업을 추가하여, OS X에서 마우스를 올릴 때 보이는 하위 메뉴를 드롭다운 메뉴를 더한다. 기존의 드롭다운 메뉴의 아무 li
에나 .dropdown-submenu
를 추가하면 자동으로 스타일이 적용된다.
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel"> ... <li class="dropdown-submenu"> <a tabindex="-1" href="#">More options</a> <ul class="dropdown-menu"> ... </ul> </li> </ul>
Rdio에서 영감을 받은 간단한 페이지 탐색은 앱과 검색 결과에 사용하기 좋다. 큰 블록은 잘못 클릭하기 어렵고, 크기 조절이 쉬우며 클릭 영역이 크다.
<div class="pagination"> <ul> <li><a href="#">Prev</a></li> <li><a href="#">1</a></li> <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li><a href="#">4</a></li> <li><a href="#">5</a></li> <li><a href="#">Next</a></li> </ul> </div>
다른 상황에 맞게 링크를 변형한다. 클릭할 수 없는 링크는 .disabled
를 사용하고, 현재 페이지는 .active
로 표시한다.
<div class="pagination"> <ul> <li class="disabled"><a href="#">«</a></li> <li class="active"><a href="#">1</a></li> ... </ul> </div>
의도한 스타일은 유지하면서 클릭 기능만 없애기위해 현재와 비활성 a를 span과 교체할 수도 있다.
<div class="pagination"> <ul> <li class="disabled"><span>«</span></li> <li class="active"><span>1</span></li> ... </ul> </div>
크고 작은 페이지 탐색이 필요한가? .pagination-large
, .pagination-small
, .pagination-mini
를 붙이면 다른 크기가 된다.
<div class="pagination pagination-large"> <ul> ... </ul> </div> <div class="pagination"> <ul> ... </ul> </div> <div class="pagination pagination-small"> <ul> ... </ul> </div> <div class="pagination pagination-mini"> <ul> ... </ul> </div>
선택적인 두 클래스, .pagination-centered
와 .pagination-right
중 하나를 추가하면 페이지 탐색 링크의 정렬이 바뀐다.
<div class="pagination pagination-centered"> ... </div>
<div class="pagination pagination-right"> ... </div>
가벼운 마크업과 스타일의 빠른 이전과 다음 링크를 가지고 간단한 페이지 탐색을 구현한다. 블로그나 잡지 같은 간단한 사이트에 사용하기 좋다.
기본적으로 앞뒤 페이지 링크는 중앙 정렬한다.
<ul class="pager"> <li><a href="#">이전</a></li> <li><a href="#">다음</a></li> </ul>
아니면 두 링크를 양끝으로 정렬할 수 있다.
<ul class="pager"> <li class="previous"> <a href="#">← 이전</a> </li> <li class="next"> <a href="#">다음 →</a> </li> </ul>
앞뒤 페이지도 페이지 탐색의 범용 .disabled
도움 클래스를 사용할 수 있다.
<ul class="pager"> <li class="previous disabled"> <a href="#">← 이전</a> </li> ... </ul>
라벨 | 마크업 |
---|---|
기본 |
<span class="label">기본</span>
|
성공 |
<span class="label label-success">성공</span>
|
경고 |
<span class="label label-warning">경고</span>
|
중요 |
<span class="label label-important">중요</span>
|
정보 |
<span class="label label-info">정보</span>
|
반전 |
<span class="label label-inverse">반전</span>
|
이름 | 결과 | 마크업 |
---|---|---|
기본 | 1 |
<span class="badge">1</span>
|
성공 | 2 |
<span class="badge badge-success">2</span>
|
경고 | 4 |
<span class="badge badge-warning">4</span>
|
중요 | 6 |
<span class="badge badge-important">6</span>
|
정보 | 8 |
<span class="badge badge-info">8</span>
|
반전 | 10 |
<span class="badge badge-inverse">10</span>
|
쉽게 사용하도록 라벨과 배지는 안에 내용이 없으면 (CSS :empty
선택자를 통해) 그냥 표시하지 않는다.
사이트의 핵심 콘텐츠를 전시하는 가볍고 유연한 화면 구성요소이다. 마케팅과 콘텐츠 중심 사이트에 잘 어울린다.
<div class="hero-unit"> <h1>제목</h1> <p>핵심 문구</p> <p> <a class="btn btn-primary btn-large"> 더 알아보기 </a> </p> </div>
적절하게 공간을 벌리고 페이지에서 내용들을 구분하기위해 h1
를 간단히 두른다. h1
의 기본 small
태그는 물론이고 여러 다른 구성요소와 스타일을 사용할 수 있다.
<div class="page-header"> <h1>예제 페이지 제목 <small>제목의 부제목</small></h1> </div>
기본적으로 부트스트랩의 미리보기는 최소한의 마크업으로 링크가 달린 그림들을 전시한다.
마크업을 조금 더하면 제목, 단락, 버튼 같은 어떤 HTML 내용이라도 미리보기에 넣을 수 있다.
미리보기(과거 1.4 버전까지 .media-grid
)는 사진, 동영상, 그림 검색 결과, 소매용품, 포트폴리오 등의 격자를 멋지게 보여준다. 링크나 정적인 내용을 포함할 수 있다.
미리보기 마크업은 간단하다. ul
안에 여러 li
태그면 끝이다. 또한 매우 유연하여 어떤 내용이든지 감싸는 약간의 마크업만으로 가능하다.
끝으로 미리보기 화면 구성요소는 .span2
나 .span3
같은 기존의 격자 방식 클래스를 사용하여 미리보기 크기를 조절한다.
앞에서 말했듯이 미리보기 마크업은 가볍고 복잡하지 않다. 링크가 달린 그림들을 위한 기본 구조를 보라.
<ul class="thumbnails"> <li class="span4"> <a href="#" class="thumbnail"> <img data-src="holder.js/300x200" alt=""> </a> </li> ... </ul>
미리보기에 원하는 HTML 내용을 넣으려면 마크업이 약간 바뀐다. 블록 수준 내용을 아무곳에나 사용하려고 이렇게 <a>
를 <div>
로 바꾸었다.
<ul class="thumbnails"> <li class="span4"> <div class="thumbnail"> <img data-src="holder.js/300x200" alt=""> <h3>미리보기 제목</h3> <p>미리보기 설명...</p> </div> </li> ... </ul>
주어진 다양한 격자 클래스를 사용해 보았다. 다른 크기를 혼용할 수도 있다.
간단한 경고문은 본문과 선택적인 닫기 버튼을 .alert
로 감싼다.
<div class="alert"> <button type="button" class="close" data-dismiss="alert">×</button> <strong>경고!</strong> 안색이 썩 좋아보이지 않으니 검사를 받아보는게 좋겠다. </div>
모바일 사파리와 모바일 오페라 웹브라우저에서 <a>
태그를 사용한다면, 경고를 닫기위해 data-dismiss="alert"
속성에 추가로 href="#"
이 필요하다.
<a href="#" class="close" data-dismiss="alert">×</a>
아니면 이 문서에서 처럼 <button>
태그와 data 속성을 사용할 수 있다. <button>
을 사용할 때 type="button"
를 사용해야 한다. 안그러면 양식을 제출못할 수도 있다.
<button type="button" class="close" data-dismiss="alert">×</button>
경고 jQuery 플러그인을 사용하여 빠르고 쉽게 경고를 닫을 수 있다
문구가 길다면, .alert-block
을 더하여 경고 윗쪽과 아래쪽 패딩을 늘린다.
안색이 썩 좋아보이지 않으니 검사를 받아보는게 좋겠다. 프로이센에서는 시타인·하르덴베르크가 시행한 개혁의 성과가 점차로 나타나 농업에서의 자본주의적 여러 관계의 성장이 엿보였다.
<div class="alert alert-block"> <button type="button" class="close" data-dismiss="alert">×</button> <h4>경고!</h4> 안색이 썩 좋아보이지 않으니... </div>
선택적인 클래스를 추가하여 경고의 의미를 변경한다.
<div class="alert alert-error"> ... </div>
<div class="alert alert-success"> ... </div>
<div class="alert alert-info"> ... </div>
수직 방향 그라데이션의 기본 진행표시줄.
<div class="progress"> <div class="bar" style="width: 60%;"></div> </div>
그라데이션을 사용하여 만든 줄무늬 효과. IE7~8에서는 불가.
<div class="progress progress-striped"> <div class="bar" style="width: 20%;"></div> </div>
.progress-striped
에 .active
를 더하면 줄무늬가 오른쪽에서 왼쪽으로 움직인다. 모든 버전의 IE에서 불가.
<div class="progress progress-striped active"> <div class="bar" style="width: 40%;"></div> </div>
여러 막대를 한 .progress
에 누적한다.
<div class="progress"> <div class="bar bar-success" style="width: 35%;"></div> <div class="bar bar-warning" style="width: 20%;"></div> <div class="bar bar-danger" style="width: 10%;"></div> </div>
진행표시줄은 일관된 스타일을 위해 버튼과 경고 스타일의 일부를 사용한다.
<div class="progress progress-info"> <div class="bar" style="width: 20%"></div> </div> <div class="progress progress-success"> <div class="bar" style="width: 40%"></div> </div> <div class="progress progress-warning"> <div class="bar" style="width: 60%"></div> </div> <div class="progress progress-danger"> <div class="bar" style="width: 80%"></div> </div>
단일색과 마찬가지로, 다양한 줄무늬 진행표시줄이 가능하다.
<div class="progress progress-info progress-striped"> <div class="bar" style="width: 20%"></div> </div> <div class="progress progress-success progress-striped"> <div class="bar" style="width: 40%"></div> </div> <div class="progress progress-warning progress-striped"> <div class="bar" style="width: 60%"></div> </div> <div class="progress progress-danger progress-striped"> <div class="bar" style="width: 80%"></div> </div>
진행표시줄의 모든 효과는 CSS3의 그라데이션과 전환과 애니메이션을 사용한다. 이 기능은 IE7~9와 파이어폭스 과거 버전에서 지원하지 않는다.
인터넷 익스플로러 10과 오페라 12 이전 버전은 애니메이션을 지원하지 않는다.
왼쪽이나 오른쪽으로 정렬된 그림과 함께 본문 내용이 나오는 (블로그 덧글, 트윗 등) 다양한 종류의 화면 구성요소를 만드는 추상 객체 스타일.
기본적으로 본문 블록 왼쪽이나 오른쪽으로 미디어 객체(그림, 동영상, 소리)를 유동시킨다.
<div class="media"> <a class="pull-left" href="#"> <img class="media-object" data-src="holder.js/64x64"> </a> <div class="media-body"> <h4 class="media-heading">미디어 제목</h4> ... <!-- 안에 있는 미디어 객체 --> <div class="media"> ... </div> </div> </div>
약간 마크업을 더하여 (덧글의 덧글이나 기사 목록에 유용한) 미디어 내부 목록을 만들 수 있다.
<ul class="media-list"> <li class="media"> <a class="pull-left" href="#"> <img class="media-object" data-src="holder.js/64x64"> </a> <div class="media-body"> <h4 class="media-heading">미디어 제목</h4> ... <!-- 안에 있는 미디어 객체 --> <div class="media"> ... </div> </div> </li> </ul>
우물은 간단하게 태그에 삽입 효과를 준다.
<div class="well"> ... </div>
두 선택적인 추가 클래스는 패딩과 둥근 모서리를 조절한다.
<div class="well well-large"> ... </div>
<div class="well well-small"> ... </div>
모달과 경고 같은 내용을 없애는 용도의 범용 닫기 아이콘이다.
<button class="close">×</button>
iOS 장치에서 a 태그를 사용하고 싶다면 클릭 이벤트로 href="#"
이 필요하다.
<a class="close" href="#">×</a>
외형이나 행동을 약간 변경하는 간단한 전용 클래스들.
태그를 왼쪽으로 유동시킨다.
class="pull-left"
.pull-left { float: left; }
태그를 오른쪽으로 유동시킨다.
class="pull-right"
.pull-right { float: right; }
태그 색깔을 #999
(진회색)로 변경한다.
class="muted"
.muted { color: #999; }
해당 태그의 float
유동 흐름을 마친다.
class="clearfix"
.clearfix { *zoom: 1; &:before, &:after { display: table; content: ""; } &:after { clear: both; } }