• 회원가입
  • 로그인
  • 구글아이디로 로그인

[table] CSS - table-layout 속성 ★★★ - 테이블 셀, 행 및 열을 레이아웃 (= table-layout속성 = 테이블레이아웃속성)

목차
  1. table-layout 예제 - 너비 결정 방식
  2. table-layout 정의
  3. table-layout 구문
  4. table-layout:fixed 이슈 - 긴 영문 문자열로 인한 레이아웃 깨짐 방지

 

table-layout 예제 - 너비 결정 방식 

 

<style>

table {

  border-collapse: collapse;

  border: 1px solid black;


th,td {

  border: 1px solid black;

}


table.a {

  table-layout: auto;

  width: 200px;  

}


table.b {

  table-layout: fixed;

  width: 200px;  

}


table.c {

  table-layout: auto;

  width: 100%;  

}


table.d {

  table-layout: fixed;

  width: 100%;  

}

</style>


<h2>table-layout: auto; width: 200px:</h2>

<table class="a">

  <tr>

    <th>코딩언어</th>

    <th>기능</th>

    <th>난이도</th>

  </tr>

  <tr>

    <td>HTML</td>

    <td>기본틀</td>

    <td>1</td>

  </tr>

  <tr>

    <td>CSS</td>

    <td>디자인</td>

    <td>2</td>

  </tr>

  <tr>

    <td>JS</td>

    <td>동작기능</td>

    <td>3</td>

  </tr>

</table>


<h2>table-layout: fixed; width: 200px:</h2>

<table class="b">

  <tr>

    <th>코딩언어</th>

    <th>기능</th>

    <th>난이도</th>

  </tr>

  <tr>

    <td>HTML</td>

    <td>기본틀</td>

    <td>1</td>

  </tr>

  <tr>

    <td>CSS</td>

    <td>디자인</td>

    <td>2</td>

  </tr>

  <tr>

    <td>JS</td>

    <td>동작기능</td>

    <td>3</td>

  </tr>

</table>


<h2>table-layout: auto; width: 100%:</h2>

<table class="c">

  <tr>

    <th>코딩언어</th>

    <th>기능</th>

    <th>난이도</th>

  </tr>

  <tr>

    <td>HTML</td>

    <td>기본틀</td>

    <td>1</td>

  </tr>

  <tr>

    <td>CSS</td>

    <td>디자인</td>

    <td>2</td>

  </tr>

  <tr>

    <td>JS</td>

    <td>동작기능</td>

    <td>3</td>

  </tr>

</table>


<h2>table-layout: fixed; width: 100%:</h2>

<table class="d">

  <tr>

    <th>코딩언어</th>

    <th>기능</th>

    <th>난이도</th>

  </tr>

  <tr>

    <td>HTML</td>

    <td>기본틀</td>

    <td>1</td>

  </tr>

  <tr>

    <td>CSS</td>

    <td>디자인</td>

    <td>2</td>

  </tr>

  <tr>

    <td>JS</td>

    <td>동작기능</td>

    <td>3</td>

  </tr>

</table>

 

결과보기

 

table-layout 정의

 

테이블 (셀, 행, 열) 레이아웃하는 데 사용.

 


 

1. 

table-layout: fixed; 속성 장점 2가지

 

① 

테이블이 훨씬 빠르게 렌더링 되는 느낌 줌.

즉,

큰 테이블에서 브라우저가 전체 테이블을 렌더링 할 때까지 사용자는 테이블의 일부를 볼 수 없는데,
table-layout : fixed 사용 시 브라우저가 테이블의 나머지 부분 로드 동안 테이블 상단을 볼 수 있음.

 

너비 지정한 테이블 레이아웃이 긴 영문문자열로 인해 깨지는 현상 차단 가능.

즉,

한글 경우엔 지정 너비 안에서 자연스럽게 줄바꿈하나,

긴 영문 문자열 경우엔 테이블 레이아웃 늘려버리는데,

table-layout:fixed 속성 사용하면 이 현상 차단 가능.

 

2.

  • 기본값: auto
  • 상속여부 : X
  • 애니효과: X
  • CSS버전: CSS2
  • JS구문: object.style.tableLayout="fixed";

 

3.

주요 최신 브라우저 모두 지원.

 

4. MDN table-layout 예제보기

https://developer.mozilla.org/en-US/docs/Web/CSS/table-layout

 

 

table-layout 구문

 

selector {table-layout: auto|fixed|initial|inherit;}

 


[속성값]

 

auto

자동 레이아웃 (기본값).
가장 긴 셀 내용이 셀 너비 결정.

 

fixed

고정 레이아웃. 테이블 및 열 너비는 테이블 및 열 너비 또는 첫 번째 셀 행 너비로 설정. 다른 행의 셀은 열 너비에 영향 안 미침. 첫 번째 행에 너비가 없으면 셀 내부의 내용에 관계없이 열 너비가 테이블에서 동일하게 나뉨.

 

initial

이 속성의 기본값으로 설정.

 

inherit

부모 요소의 속성값 상속. 

 


table-layout:fixed 이슈 - 긴 영문 문자열로 인한 레이아웃 깨짐 방지

 

<style>

table,th,td {border:1px solid red;}

table {width:100px;}

table.c {table-layout:fixed;}

table.d {table-layout:fixed; word-break:break-all;}

table.e {table-layout:fixed; overflow:hidden;}

</style>

 

 

<table class='a'>

<tr>

    <td>a.홈짱닷컴 홈페이지 제작관리 유지보수 강의</td>

</tr>

</table>


<table class='b'>

<tr>

    <td>b.https://homzzang.com/b/css</td>

</tr>

</table>


<table class='c'>

<tr>

    <td>c.https://homzzang.com/b/css</td>

</tr>

</table>


<table class='d'>

<tr>

    <td>d.https://homzzang.com/b/css</td>

</tr>

</table>


<table class='e'>

<tr>

    <td>e.https://homzzang.com/b/css</td>

</tr>

</table>

 

결과보기


 


분류 제목
css CSS - 이미지 세로 나열 (= 수직 정렬) 방법/경우/원인/이유
flex CSS - order 속성(I) - 아이템 순서 재조정 (= order속성 = 오더속성, IE11) ※ 플렉…
func CSS - rgb() 함수 - (빨강,녹색,파랑)으로 색상 정의. (= rgb함수 = 알지비함수)
list CSS - list-style 속성 ★ - 리스트 스타일 일괄 (= 리스트마커 = list-style속성 =…
func CSS - rgba() 함수 ★ - (빨강,녹색,파랑,불투명도)으로 색상 정의. (= rgba함수 = 알지비…
intro CSS - 정의・장점・구문・초기화 + 주석
animation CSS - animation-duration 속성 - 애니지속시간 (= 애니완료소요시간 = 움직임완료소요시간…
func CSS - hsla() 함수 - (색조, 채도, 밝기, 불투명도)로 색상 정의. (= hsla함수 = 에이치…
css CSS - 블럭요소 수직중앙정렬/수평중앙정렬 (= 가로가운데정렬) (IE9) ★★★★★ (HT - Cent…
css CSS - zoom 속성 - 요소 확대 (= zoom속성 = 줌속성) ※ IE 하위 브라우저(예: IE6, …
flex CSS - align-self 속성(I) ★ - 교차축 기준으로, 아이템 자체 정렬. (= align-sel…
transform CSS - transform 속성 ★ - 요소 (회전/비틀기/크기확대) 변환 + 마우스 허버 시 줌효과 (=…
selector CSS - ::after 가상선택자 ★ - 요소 뒤에 내용삽입 (= ::after선택자 = 에프터선택자/애프…
text CSS - text-emphasis 속성 - 텍스트 강조마크의 '모먕/색깔' 일괄 지정 (= 텍스트 글자 위…
box CSS - margin-top 속성 - 바깥여백상단 (= margin-top속성 = 마진탑속성 = 마진톱속성…
responsive CSS - RES Video - (반응형 동영상)
selector CSS - element~element 형제선택자 ★★ - 지정요소 뒤의 모든 특정형제요소 (요소선택자군…
border CSS - border-top 속성 - 테두리상단일괄 (= border-top속성 = 보더탑속성 / 보더톱속…
table CSS - table-layout 속성 ★★★ - 테이블 셀, 행 및 열을 레이아웃 (= table-layo…
selector CSS - element,element 병렬선택자 ★ - 쉼표로 나열된 여러 요소 선택. (= 여러 요소선택…
21/27
목록
찾아주셔서 감사합니다. Since 2012