2012-10-17 2 views
3

약간의 CSS 문제가 있습니다.인라인, 랩핑 할 수없는 요소의 컨테이너에 대한 유체 너비

다음 예제와 같이 일부 div 요소가 있습니다.

<div class="outer-container"> 
    <div class="inner-container"> 
     <div class="block">text</div> 
     <div class="block">text</div> 
     <div class="block">text</div> 
     <!-- More "block" divs here --> 
    </div> 
</div> 

내 목표는 그하는 CSS 기반의 솔루션을 찾을 수 있습니다 : 클래스 = "블록"div의 동적 번호, 고정 폭 각이있다.

  1. class="block" div를 새로운 줄 바꿈없이 표시합니다.
  2. 위의 것과 같이 가변 숫자 class="inner-container" divs를 지원합니다. 각각은 고유 한 줄로 표시됩니다.
  3. 내용물의 폭과 일치하도록 외부 용기를 유체로 "shrink-wrap" 으로 설정하십시오.

의견이 있으십니까? 이것이 당신이 찾고있는, 그러나 시작 될 일 경우

+0

[여기] (http://jsfiddle.net/MNrkk) 가세요. 외부 컨테이너 내용의 너비는 기본적으로 100 %입니다. –

답변

1

100 % 확인 : display: inline-blockwhite-space: nowrapblock 요소를 설정하여

http://jsfiddle.net/r4dEX/3/

, 그것의 요소를 허용해야 서로 나란히 앉아 있지만 내용이 사용 가능한 공간보다 길면 새 줄로 감싸지 않습니다 (대신 block이 새 줄로 이동합니다).

inner-container은 고유 한 행 (display: blockdiv의 기본 동작 임)에 표시됩니다.

외부 컨테이너를 display: inline-block으로 설정하면 해당 내용에 맞게 '줄 바꿈'이 발생합니다.

+0

세 번째 요구 사항을 충족하려면 외부 컨테이너 인라인 블록을 만들 수도 있습니다. –

+0

예, 방금 예를 편집했습니다.) – MassivePenguin

+0

빠른 답장을 보내 주셔서 감사합니다.하지만 필요한 솔루션이 아닙니다. 클래스의 너비가 너무 큰 경우 예제에서 'block'div 큰. 사용자의 브라우저 창 너비 또는 너비에 관계없이 줄 바꿈하지 않고 인라인 모드로 유지하고 싶습니다. – user1752396

0

Here은 블록이 인라인이고 내부 컨테이너의 너비가 고정되어 있고 외부 컨테이너가 맞춰 지도록 축소되어있는 예입니다.

+0

매우 즉각적인 답장을 보내 주셔서 감사합니다.하지만 필요한 것은 아닙니다. 주어진 내부 컨테이너 내의 클래스 = "블록"div가 얼마나 많은지에 관계없이 나란히 배치되도록하고 싶습니다. 좁은 class = "block"div가 몇 개 있지만 크기가 너무 크거나 고정 너비가 너무 높으면 div가 시작됩니다. – user1752396

관련 문제