[css] table-layout:fixed에서 colspan사용하면서 width조절


table태그를 수정하다보면 스타일로

table-layout:fixed 쓰는 경우가 있다 ( 사실 자주씀 테이블 틀어지면 안되니까..)

근데 이렇게 fixed를 쓰고 있는 동안에 colspan 을 써주어야 하는 경우가 발생하는데

이런경우 colspan으로 합친 셀 말고 분리되어있는 셀의 width가 거의50% 50%으로 고정이 되어버린다

그러니까, 테이블에다가는 table-layout:fixed 를 주고 위 tr은 2개의 셀을 병합, 아래tr은 두개의 셀을 분리한다고 가정해보자.

위에 줄은 colspan="2"으로 셀 병합을 하고, 밑에줄은 td나 th 등으로 구분이 될건데,

이때, 밑에줄에 2개의 td의 width를 다르게 주고 싶다.

앞의 셀은 width를 20%로, 뒤의 셀의 width는 80%로 주고 싶은데,

table-layout:fixed 를 하게 되면 자동으로 셀 크기가 정해져버린다. (´-ι_-`) (절레)(절레)

이 떄 할 수 있는 방법이 colgroup 을 사용하는 것이다.

<table style="table-layout:fixed;">
  <colgroup>
  	<col style="width:20%"/>
  	<col style="width:80%" />
  </colgroup>
  <tr>
    <th colspan="2" >합친셀</th>
  </tr>
  <tr>
    <th >앞의 셀</th>
    <th >뒤의 셀</th>
  </tr>
</table>

이렇게 내가 만들고 싶은 테이블의 tr 과 td를 써주기는 하는데

그 위에다가 colgroupcol 을 써주는 것이다. 이때 내가 원하는 td의 개수만큼 col을 써주어야 한다.

(colspan적용하지 않은 td의 갯수만큼)

그러면 col이 정한 width대로 너비 조절이 가능하다




© 2018. by sora

Powered by sora