폭, 채우기 및 테두리를 변경하여 포함 된 div 및 부동 요소를 효과적으로 '축소합니다.'전환을 만들려고합니다.너비, 채우기 및 테두리의 매끄러운 CSS '축소'전환
HTML :
<div>
<div class="section">
<div class="sub-section">label</div>
<div class="sub-section">field</div>
</div>
<div class="section collapsible">
<div class="sub-section">label</div>
<div class="sub-section">field</div>
</div>
<div class="section">
<div class="sub-section">label</div>
<div class="sub-section">field</div>
</div>
</div>
CSS :
.section {
float: left;
width: 25%;
}
.section.collapsible {
opacity: 1;
transition: opacity linear 1s, width linear 1s;
}
.section.collapsible.collapsed {
width: 0;
opacity: 0;
}
.sub-section {
width: 50%;
float: left;
height: 42px;
}
http://jsfiddle.net/p38b6ndb/1
은 샘플을 포함하려면 :
난 당신이 여기에서 볼 수있는 몇 가지 조사를 수행 한 시나리오 : 두 번째 섹션은 접혀 있어야하며 세 번째 섹션은 첫 번째 섹션과 함께 왼쪽으로 이동합니다.
문제 : I는 폭이 높이 아래 후속 요소 밀어 증가하는 원인 div의 주위를 감싸는 붕괴에 일정량에 도달 할 때 붕괴되고 DIV에 padding
및/또는 border
있는 경우.
- 나는
box-sizing: border-box
와 시도했지만이 역시 명확한 포장 효과가 있습니다. padding
및border-width
은 물론width
도 전환하려고 시도했지만 여전히 다시 전환됩니다. 다른 기간을 실험 할 수는 있지만 여전히 이상한 효과가 있습니다. 그들이 불투명 가서 그냥 가margin-left
을 추가 할 수 있지만이 높이에 영향을주지 않습니다와 '아래로 밀어'를
로- 나는 패딩과 국경을 무시하려고 노력했다.
- 높이를 고정시킬 수는 있지만 실제로는 각각의 섹션에 다양한 크기의 콘텐츠가 포함될 수 있으므로 자동으로 높이를 원합니다.
패딩/테두리가있는 요소가있는 div에서이 축소 전환을 어떻게 구현할 수 있습니까?
정말 환영받을 바이올린을 업데이트하면 대답을 증명할 수 있습니다.
왜 글꼴 크기를 0으로 전환하지 않습니까? - http://jsfiddle.net/p38b6ndb/2/ –
좋습니다.이 방법이 효과적이어서 콘텐츠가 아래쪽으로 푸시되지 않습니다. –