2011-03-16 3 views
26

나는 단순히 관계없이이 무엇인지, 부모의 폭을 채우기가하고 싶은 DOM의 항목이 : 나는 filler 클래스의 폭과 일치하는지 CSS에 지정할 수있는 방법"채우기 부모"에 대한 CSS

<div width="800"> 
    <div class="filler"></div> 
</div> 

을 그 부모의?

.filler { 
    ? 
} 
+1

블록 레벨 요소 (예를 들어'div')는 폭'지정할 수 있습니다 ... 그것은 부모의 채울 것 기본값이며 일부 브라우저에서 여백/여백/경계선이있는 경우 문제가 발생할 수 있습니다.) – Rudu

답변

21

시도 : width: 100%;?

+2

'a'의 너비가 실제 브라우저의 100 %가되어야한다는 뜻이 아닙니까? 과거에 해왔을 때 그 결과가 무엇인지 확신합니다. –

+1

@TK 아니요, 절대 위치 지정을 지정하지 않으면 치수가 상위 요소에 상대적입니다. – BinaryTox1n

1

div는 블록 요소이며 기본적으로 부모를 채 웁니다.
float:left 또는 float:right 또는 display:inline을 사용하지 않았거나 부모님이 800px가 아닐 경우에만 사용하십시오.
(아마도 width="800" 대신 style="width:800px" 또는 width="800px"으로 시도해야합니다.)
일반적으로 어떻게 작동하는지 보려면 테두리를 넣으십시오.

1

블로킹이 발생하지 않는 한 divp과 같은 블록 수준 요소는 항상 해당 컨테이너의 전체 너비를 채 웁니다. span 또는 a과 같은 인라인 요소가있는 경우 블록 수준 요소로 바꾸려면 display: block으로 스타일을 지정할 수 있지만이 경우에도 앞뒤에 줄 바꿈을 넣습니다.

29

내부 항목에 따라 다양한 접근 방식이 있습니다.

블록 레벨 요소 (단락, div 등) 인 경우 컨테이너의 너비를 100 % 채우기 위해 자동으로 조정됩니다.

인라인 요소 인 경우 너무 좋지 않으므로 블록 수준 요소로 변환 할 때까지 width:100%을 허용하지 않습니다 : display:block.

플로팅 요소는 특수한 경우이며 블록 수준 요소 일지라도 내부 내용의 너비에만 적용됩니다. 그들은 width:100%이 필요합니다.

절대적으로 배치 된 요소는 더욱 까다롭기 때문에 width:100%이 필요하지만 컨테이너에는 위치 지정 컨텍스트도 필요합니다. position:relative. 그건하지만, 당신이 원하는 너무 경우`100 % 모든 사가지 경우

예 : 기본적으로 http://jsfiddle.net/dD7E4/

+0

span이나 inline-block과 같은 인라인 요소에 'width : 100 %'를 지정할 수 있습니다. – Magne

+0

@Magne, 나는 다르다. 인라인 블록은 블럭과 비슷한 특성으로 인해 'width : 100 %'를 기꺼이 받아 들일 것이지만 베어 본 (barebones) 인 unstyled 'span'은 그렇지 않을 것입니다. – mingos

+0

당신은'span'에 대해 맞을 수도 있습니다. 나는 그것을 시험하지 않았다. 하지만 인라인 블록과 스팬은 모두 인라인 요소로 취급되므로 동작이 동일하다고 가정했습니다. – Magne

관련 문제