부트 스트랩 3의 스택 탭


157

부트 스트랩 3의 탭 jquery 플러그인을 사용하여 왼쪽 정렬 된 스택 탭을 구현하려고합니다. 탭은 상단이 아닌 탭 내용의 왼쪽에 수직으로 렌더링됩니다. 내가 다음을 시도 할 때;

   <ul class="nav nav-tabs nav-stacked">
        <li><a href="#tab1" data-toggle="tab">Tab 1</a></li>
        <li><a href="#tab2" data-toggle="tab">Tab 2</a></li>
        <li><a href="#tab3" data-toggle="tab">Tab 3</a></li>
    </ul>


    <div class="tab-content">
        <div class="tab-pane fade" id="tab1">
            Tab 1 content
        </div>
        <div class="tab-pane fade" id="tab2">
            Tab 2 content              
        </div>
        <div class="tab-pane fade" id="tab3">
            Tab 3 content
        </div>
    </div>

탭은 서로 쌓여 있지만 왼쪽으로 바른 것으로 제대로 렌더링되지 않고 가로 탭만 붙어 있습니다. 컨텐츠 div에 탭 컨텐츠가 올바르게 표시 / 숨겨집니다.

이것은 탭 왼쪽탭 오른쪽 클래스를 사용하여 Bootstrap 2.x에서 처리 되었지만 Bootstrap 3에서는 더 이상 사용되지 않으며 실제로 다른 것으로 대체되지 않는 것 같습니다. Bootstrap 3 Tab 플러그인에서 올바른 왼쪽 탭 렌더링이 가능한지 아는 사람이 있습니까?


1
.nav클래스 만 사용하고 그리드를 사용하여 탐색 및 컨텐츠의 너비를 설정할 수 있습니다. .nav기본적으로 스택 형 이므로 '스택 형 탐색'이 필요하지 않습니다 .
패트릭 버클리

답변:


236

왼쪽, 오른쪽 및 아래 탭이 Bootstrap 3에서 제거되었지만이를 위해 사용자 정의 CSS를 추가 할 수 있습니다.

.tabs-below > .nav-tabs,
.tabs-right > .nav-tabs,
.tabs-left > .nav-tabs {
  border-bottom: 0;
}

.tab-content > .tab-pane,
.pill-content > .pill-pane {
  display: none;
}

.tab-content > .active,
.pill-content > .active {
  display: block;
}

.tabs-below > .nav-tabs {
  border-top: 1px solid #ddd;
}

.tabs-below > .nav-tabs > li {
  margin-top: -1px;
  margin-bottom: 0;
}

.tabs-below > .nav-tabs > li > a {
  -webkit-border-radius: 0 0 4px 4px;
     -moz-border-radius: 0 0 4px 4px;
          border-radius: 0 0 4px 4px;
}

.tabs-below > .nav-tabs > li > a:hover,
.tabs-below > .nav-tabs > li > a:focus {
  border-top-color: #ddd;
  border-bottom-color: transparent;
}

.tabs-below > .nav-tabs > .active > a,
.tabs-below > .nav-tabs > .active > a:hover,
.tabs-below > .nav-tabs > .active > a:focus {
  border-color: transparent #ddd #ddd #ddd;
}

.tabs-left > .nav-tabs > li,
.tabs-right > .nav-tabs > li {
  float: none;
}

.tabs-left > .nav-tabs > li > a,
.tabs-right > .nav-tabs > li > a {
  min-width: 74px;
  margin-right: 0;
  margin-bottom: 3px;
}

.tabs-left > .nav-tabs {
  float: left;
  margin-right: 19px;
  border-right: 1px solid #ddd;
}

.tabs-left > .nav-tabs > li > a {
  margin-right: -1px;
  -webkit-border-radius: 4px 0 0 4px;
     -moz-border-radius: 4px 0 0 4px;
          border-radius: 4px 0 0 4px;
}

.tabs-left > .nav-tabs > li > a:hover,
.tabs-left > .nav-tabs > li > a:focus {
  border-color: #eeeeee #dddddd #eeeeee #eeeeee;
}

.tabs-left > .nav-tabs .active > a,
.tabs-left > .nav-tabs .active > a:hover,
.tabs-left > .nav-tabs .active > a:focus {
  border-color: #ddd transparent #ddd #ddd;
  *border-right-color: #ffffff;
}

.tabs-right > .nav-tabs {
  float: right;
  margin-left: 19px;
  border-left: 1px solid #ddd;
}

.tabs-right > .nav-tabs > li > a {
  margin-left: -1px;
  -webkit-border-radius: 0 4px 4px 0;
     -moz-border-radius: 0 4px 4px 0;
          border-radius: 0 4px 4px 0;
}

.tabs-right > .nav-tabs > li > a:hover,
.tabs-right > .nav-tabs > li > a:focus {
  border-color: #eeeeee #eeeeee #eeeeee #dddddd;
}

.tabs-right > .nav-tabs .active > a,
.tabs-right > .nav-tabs .active > a:hover,
.tabs-right > .nav-tabs .active > a:focus {
  border-color: #ddd #ddd #ddd transparent;
  *border-left-color: #ffffff;
}

실제 예 : http://bootply.com/74926

최신 정보

탭의 정확한 모양이 필요하지 않은 경우 (각 탭이 활성화 될 때 왼쪽이나 오른쪽에 적절하게 정렬되어 있음) nav-stacked부트 스트랩과 함께을 사용 col-*하여 탭을 왼쪽이나 오른쪽으로 띄울 수 있습니다 ...

nav-stacked데모 : http://codeply.com/go/rv3Cvr0lZ4

<ul class="nav nav-pills nav-stacked col-md-3">
    <li><a href="#a" data-toggle="tab">1</a></li>
    <li><a href="#b" data-toggle="tab">2</a></li>
    <li><a href="#c" data-toggle="tab">3</a></li>
</ul>

33
이것은 문제를 완벽하게 해결합니다. 그래도 왜 그들이 부트 스트랩 3에서 이것을 꺼 냈는지 궁금합니다.
osmbergs

24
왜 제거 되었습니까? oO
루즈 벨트

4
예, .nav 만 쌓여 있지만 선택 / 활성 상태 일 때 탭 (적절한 왼쪽, 오른쪽 테두리)처럼 보이지 않습니다. 이것이 탭의 목적입니다.
Zim

17
다시 추가 할 필요는 없습니다. 의도적으로 제거되었습니다. JavaScript / 탭에서이 문제를 어떻게 처리해야하는지 공식 부트 스트랩 설명서를 참조하십시오. 또한 세로 탭을 수행하기 위해 Bootstrap 3 설정을 올바르게 사용하는 방법에 대한이 학습서를 참조하십시오. tutsme-webdesign.info/bootstrap-3-toggable-tabs-and-pills
Neil Monroe

3
간단한 텍스트 내용의 경우 두 솔루션 중 하나가 좋습니다. 다른 사람이 내가 이야기하고있는 문제에 직면하면 @dbtek의 솔루션이 가장 효과적이었습니다 : bootstrap-vertical-tabs CSS 파일을 포함해야했습니다 ... 감사합니다 @dbtek!
msanjay

47

부트 스트랩 팀이 제거 한 것 같습니다. https://github.com/twbs/bootstrap/issues/8922를 참조하십시오 . @ Skelly의 대답은 원하지 않는 사용자 정의 CSS와 관련이 있으므로 그리드 시스템과 탐색 필을 사용했습니다. 잘 작동하고 멋지게 보였습니다. 코드는 다음과 같습니다.

<div class="row">

  <!-- Navigation Buttons -->
  <div class="col-md-3">
    <ul class="nav nav-pills nav-stacked" id="myTabs">
      <li class="active"><a href="#home" data-toggle="pill">Home</a></li>
      <li><a href="#profile" data-toggle="pill">Profile</a></li>
      <li><a href="#messages" data-toggle="pill">Messages</a></li>
    </ul>
  </div>

  <!-- Content -->
  <div class="col-md-9">
    <div class="tab-content">
      <div class="tab-pane active" id="home">Home</div>
      <div class="tab-pane" id="profile">Profile</div>
      <div class="tab-pane" id="messages">Messages</div>
    </div>
  </div>

</div>

http://bootply.com/81948 에서이 작업을 볼 수 있습니다.

[업데이트] @SeanK는 Javascript를 통해 nav-pill을 사용하지 않고 대신을 사용하는 옵션을 제공합니다 data-toggle="pill". http://bootply.com/96067 에서 확인하십시오 . 고마워 션.


10
자바 스크립트를 포함 할 필요는 없습니다. 각 a-tag에 data-toggle = "pill"을 추가하면 부트 스트랩을 사용하여 자동으로 작동합니다. 여기에서 볼 수 있습니다 : bootply.com/96067
SeanK

감사합니다 @SeanK. 답변에 추가했습니다.
David Lemayian

이것은 좋았고 사용자 정의 CSS가 없으면 이것을 선호했지만 @Skelly의 탭에는 활성 탭과 내용 사이에 더 '연속적인'모양과 관계가 있습니다. 어떻게 든 동일한 방법으로 달성 할 수 있다면 좋을 것입니다.하지만 어떻게 알아낼 수 없었습니다. 나는 간결성을 위해 하나의 예를 좁히는 포크를 만들었다 : bootply.com/QZfrLF0XjD
msanjay

1
반면에, 나는 약간의 착색 된 내용물을 넣었고 이것이 허용 된 접근법보다 훨씬 잘 처리하는 것처럼 보였습니다. bootply.com/SeQ6z7fhbQbootply.com/cre9NpmXpA
msanjay


9

다시 추가 할 필요는 없습니다. 의도적으로 제거되었습니다. 설명서가 다소 변경되었으며 필요한 CSS 클래스 ( "nav-stacked")는 Pills 구성 요소에서만 언급되었지만 탭에서도 작동합니다.

이 튜토리얼에서는 Bootstrap 3 설정을 사용하여 수직 탭을 올바르게 수행하는 방법을 보여줍니다.
tutsme-webdesign.info/bootstrap-3-toggable-tabs-and-pills


그들은 지금 그것을 완전히 제거했습니다. 절차는 위의 링크를 참조하십시오.
닐 먼로

대단히 감사합니다. 링크 된 기사는 실용적이고 실용적인 예제와 많은 설명을 제공합니다. 이것은 내가 찾던 것입니다.
Aluan Haddad

가치가있는 것은 네비게이션 필에만 적합합니다. 탐색 탭은 쌓이지 만 스타일은 상단의 가로 탭처럼 보입니다. OP가 탐색 탭에 대해 구체적으로 요청했기 때문에 이것이 적절한 대답으로 간주 될 수 있다고 생각하지 않습니다.
Jay Mathis

URL이 더 이상 작동하지 않습니다! 그러면이 대답은 의미가 없습니다!
Bobort
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.