답변 4개
해당 스킨의 list.skin.php에서,
게시물 리스트를 처리하는 반복문 내에서 두 개의 게시물을 묶어서 출력하도록 변경하시면~
기존의 for 반복문을 한 번에 두 개씩 처리하도록 하고,
테이블의 <td> 태그를 한 행당 두 개로 배열한 뒤,
마지막 게시물이 홀수일 경우 빈 칸으로 처리하는 로직을 추가하시면~
for ($i=0; $i<count($list); $i++) {
if ($i%2==0) $lt_class = "even";
else $lt_class = "";
?>
<tr class="<?php if ($list[$i]['is_notice']) echo "bo_notice"; ?> <?php echo $lt_class ?>">
<td class="td_subject">
<a href="<?php echo $list[$i]['href'] ?>"><?php echo $list[$i]['subject'] ?></a>
</td>
</tr>
<?php } ?>
</p>
<p data-pm-slice="1 1 []"><?php
for ($i=0; $i<count($list); $i+=2) {
$lt_class = ($i/2)%2==0 ? "even" : "";
?>
<tr class="<?php echo $lt_class ?>">
<td class="td_subject">
<a href="<?php echo $list[$i]['href'] ?>">
<?php echo $list[$i]['subject'] ?>
</a>
</td>
<td class="td_subject">
<?php if(isset($list[$i+1])) { ?>
<a href="<?php echo $list[$i+1]['href'] ?>">
<?php echo $list[$i+1]['subject'] ?>
</a>
<?php } else { echo ' '; } ?>
</td>
</tr>
<?php } ?></p>
<p>
*$i+=2를 통해 반복문을 두 개씩 건너뛰도록
*첫 번째와 두 번째 게시물을 각각의 <td>로 나누어 한 행에 출력
*홀수일 때 마지막 게시물이 남는 경우 빈 칸( )을 출력해 레이아웃 깨짐을 방지
답변에 대한 댓글 4개
HTML5에서는 레이아웃을 만들 때 테이블 사용을 권장하지 않는다지만,
해당은 리스트를 테이블 형태로 표시하는 것이 적절하지 않을까? 싶습니다.
만약 반응형 디자인이라면, 적절한 활용 방식도 있겠습니다만,
기존 코드가 테이블 구조를 기반으로 하고 있으므로,
이를 유지하면서도 최적화하는 것이 현실적이지 않나 싶습니다!
조언, 감사합니다! '◡'
답변 감사합니다. ^^;
댓글을 작성하려면 로그인이 필요합니다.
보통은 LI 에 float:left 해주고 너비를 50% 해주면 됩니다.
li나 div는 블럭요소라 float:left 줘야 옆으로 나란히 정렬됩니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인