2017-09-12 2 views
1

가로 메뉴를 만들려고합니다. 인 flexbox의 나의 이해는 내가 요소가 수평 스택 갖고 싶어, 내가 다음 페이지에서, 박스는 수직플렉스 컨테이너가 수평으로 쌓이는 플렉스 아이템을 만드는 방법은 무엇입니까?

div#navcontainer { 
 
    display: flex; 
 
    flex-direction: row; 
 
    flex-wrap: nowrap; 
 
} 
 

 
div.navitem { 
 
    color: #292929; 
 
    height: 45px; 
 
    width: 150px; 
 
    padding: 5px; 
 
    border-color: 292929; 
 
    border-width: 2px; 
 
    border-style: solid; 
 

 
    display: flex; 
 
    flex-direction: column; 
 
    align-items: center; 
 
    justify-content: center; 
 
}
<div id="header"> 
 
    <div id="navcontainer"> 
 
    <div class="navitem"><a href="./index.html">home</a></div> 
 
    <div class="navitem"><a href="./about.html">about</a></div> 
 
    <div class="navitem"><a href="./services.html">services</a></div> 
 
    <div class="navitem"><a href="./contact.html">contact</a></div> 
 
    </div> 
 
</div>

스택,

display: flex 
flex-direction: row; 

그러나 CSS 규칙을 적용해야한다는 것입니다

다른 요소의 플렉스 컨테이너가 수직으로 쌓이는 CSS 플렉스 항목을 만드는 방법은 무엇입니까?

+0

참고 : column'을하는 항목을 세로로 쌓습니다. –

+0

첫 번째 오류는 다른 사람이 css와 html을 별도의 덩어리로 분할하여 수정 한 것입니다. 두 번째 오류는 내 자신이었습니다. SO를 묻기 전에 시도한 마지막 사항은 flex-direction : column이 역설적으로 작동하는지 확인하는 것이 었습니다. –

+1

사실 아니요. 첫 번째 오류는 원래의 질문이었고 사실 문제의 원인입니다. 나는 ** id *를 참조 했어야 할 때 클래스 *'navcontainer'를 참조하도록 내 선택기를 잘못 작성했습니다. 그래서 제 '디스플레이 : 플렉스'는 결코 전혀 적용되지 않았습니다. –

답변

1

세트 display: flex-#navcontainer. 또한 flexbox없이 얻을 수 있습니다. 상자에 대해 display: inline-block 및 백분율 값을 사용하십시오.

+0

'display : inline-block'을 사용하면 화면이 너무 작아지면 항목이 줄 바꿈됩니다. 맞습니까? –

+0

네, 맞습니다. – glupiec

0

수평 방향이 기본 방향이므로 flex-direction: row은 불필요합니다. 지금 당신은 수직 플렉스 박스를 포함 할 수평리스트를 가지고 있습니다. 당신의 HTML에 당신이`ID = "navcontainer"를 '가지고 있지만 CSS에서이`.navcontainer` ... 당신은 또한 플렉스 방향'으로 설정 navcontainer``이 있다고

#navcontainer { 
    display: flex; 
    flex-wrap: nowrap; 
} 

.navitem { 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    justify-content: center; 
} 
+0

사과 - #navcontainer에서'flex-direction : row'를 사용했습니다. –

관련 문제