2012-04-03 3 views
2

4 개의 하드 코딩 된 div가 있습니다. 세 번째 div 이후에 새 줄에 4 번째 div를 나누거나 넣고 싶습니다. 어떻게해야합니까? 그리고이 PHP를 할 수 있습니까? 아니면 javascript/jQuery를 사용해야합니까? div는 레이블 태그 btw에 래핑됩니다. 라벨이 동적으로 켜져 있음을 잊어 버렸습니다. 따라서 모든 레이블을 한꺼번에 볼 수있는 것은 아닙니다.많은 div 이후에 중단

<label class="1"> 
    <div id="div1">Stuff 1</div> 
</label> 
<label class="2"> 
    <div id="div2">Stuff 2</div> 
</label> 
<label class="3"> 
    <div id="div3">Stuff 3</div> 
</label> 
<label class="4"> 
    <div id="div4">Stuff 4</div> 
</label> 
+1

'
' 가장 쉬운 해결책입니다 – hjpotter92

+1

내가 잘못 본 것이 아니라면 어쨌든 모두 별도의 줄에 있어야합니다. 당신은 어딘가에'display : inline' 스타일을 넣었습니까? – spencercw

+0

질문이 업데이트되었습니다. 하지만 그래, 나는 그들에게 인라인을 추가 CSS를 가지고 – Joe

답변

4

사용 nth-child 나눌 경우 <br/>을 추가

$('label:nth-child(4n)').after("<br/>");​ 
+0

고마워요! 이것은 내가 필요로하는 것에 훌륭하게 작동하며 그것은 간단합니다. – Joe

+1

'nth-child (n) '에 승수를 가질 수 있다는 것을 몰랐습니다. 매우 차갑습니다. – jrummell

+0

@paislee - 레이블이 먼저 표시되는지 확인하기 위해 추가 검사를 추가 한 다음이 스크립트에서이 방법을 사용할 수 있습니까? – Joe

1

할 수 있습니다 jQuery의 .each() 방법으로 라벨을 반복하고 현재의 인덱스가 3으로

$("label").each(function(i){ 
    if (i%3 == 0) 
    { 
     $(this).after("<br/>"); 
    } 
}); 
+0

+1 멋진 하나 ...... –

+0

@ RokoC.Buljan 아니, jQuery는 익명의 콜백을 호출 할 때'i'를 설정합니다. – jrummell

+0

예 예. 죄송합니다. 저는 휴대 전화입니다. (i) 내 안쪽 괄호가 내 먹음에 의해 먹었습니다. +1 –