2016-08-12 3 views
0

나는 아래 와이어 프레임을 가지고 있으며 이것을 flexbox으로 코드화하는 가장 좋은 방법을보고 싶다.플렉스 박스로 레이아웃 설정

필자는 simple flexbox grid system을 코딩했지만 내 와이어 프레임은 그리드 시스템에있는 것보다 더 많은 사용자 정의가 필요합니다.

enter image description here

나는 부모 DIV가 display: flex을 가지고 있고이 자식 div의이 flex:1flex: 0 0 40%을 가지고 있습니다. 나머지 주 래퍼 (전체 회색 상자 세트는 max-width: 1400px)로 유지되는 콘텐츠 div (파란색과 빨간색의 회색 상자 내부)를 추가하는 가장 좋은 방법은 무엇입니까?

감사합니다.

+0

중복 - http://stackoverflow.com/questions/28565976/css-how-to-overflow-from-div-to-full-width-of-screen –

+0

@Paulie_D 예, 배경 이미지와 색상이 있습니다. 그것은 완전히 다른 질문 (레이아웃)이고 다른 하나는'flexbox'를 사용하지 않습니다. – Ohsik

+0

이것은 현재 중복되거나 의견을 기반으로하고 닫힐 가능성이 있습니다. 질문의 "최선의 방법"부분을 제거하고 실용적인 문제에 직면하면 더 긍정적 인 관심을받을 수 있습니다. 그렇다고하더라도, 나는 그것이 링크 된 Q & A의 복제본이라고 생각한다. –

답변

1

다음은 일반적인 개념입니다.

위치 지정된 의사 요소 (행의 각 섹션에 하나씩). 적절한 너비 (body에는 overflow-x:hidden이어야 함)와 적절한 위치 지정 값이 있어야합니다.

* { 
 
    box-sizing: border-box; 
 
} 
 
body { 
 
    overflow-x: hidden; 
 
} 
 
.wrapper { 
 
    min-height: 100vh; /* for demo purposes */ 
 
    width: 60%; 
 
    margin: auto; 
 
    background: grey; 
 
    display: flex; 
 
    flex-direction: column; 
 
} 
 
header { 
 
    height: 20vh; 
 
    background: green; 
 
} 
 
.inner { 
 
    height: 30vh; 
 
    display: flex; 
 
} 
 
main { 
 
    background: blue; 
 
    flex: 1; 
 
    border: 2px solid black; 
 
} 
 
aside { 
 
    background: red; 
 
    flex: 0 0 40%; 
 
    border: 2px solid black; 
 
} 
 
.other { 
 
    background: pink; 
 
    flex: 1; 
 
} 
 
/* magic section */ 
 

 
.extend { 
 
    position: relative; 
 
} 
 
.extend::after { 
 
    content: ''; 
 
    position: absolute; 
 
    width: 100vw; 
 
    top: 0; 
 
    height: 100%; 
 
    background: inherit; 
 
    z-index: -1; 
 
} 
 
.left::after { 
 
    right: 0; 
 
} 
 
.right::after { 
 
    left: 0; 
 
}
<div class="wrapper"> 
 
    <header></header> 
 
    <div class="inner"> 
 
    <main class="extend left"></main> 
 
    <aside class="extend right"></aside> 
 
    </div> 
 
    <div class="other"></div> 
 
</div>

+0

그것은 나를 위해 작동합니다. 답변 감사합니다! 이것은 좋은 팁입니다! – Ohsik

관련 문제