zhaoJian의 기술 노트

IT 강좌 CSS 기초 029_리스트와 테이블

학습 / CSS 기초 약 10670자 · 27분 소요 - 조회

리스트

CSS에서 list-style-type list-style-image list-style-position 등의 속성을 통해 리스트 스타일을 최적화할 수 있습니다.

리스트 타입

리스트의 타입을 정의하며, 비순서 리스트, 순서 리스트, 정의 리스트를 포함합니다. none 표시 안 함, disc 원점, circle 원, square 정사각형, decimal 숫자, lower-alpha 소문자, upper-alpha 대문자, decimal-leading-zero 숫자 앞에 0 추가, lower-roman 소문자 로마 숫자, upper-roman 대문자 로마 숫자 등이 있습니다.

예제:

.ul-none{
list-style-type: none;
}
.ul-disc{
list-style-type: disc;
}
.ul-circle{
list-style-type: circle;
}
.ul-square{
list-style-type: square;
}
.ul-decimal{
list-style-type: decimal;
}
.ul-lower-alpha{
list-style-type: lower-alpha;
}
.ul-upper-alpha{
list-style-type: upper-alpha;
}
.ul-decimal-leading-zero{
list-style-type: decimal-leading-zero;
}
.ul-lower-roman{
list-style-type: lower-roman;
}
.ul-upper-roman{
list-style-type: upper-roman;
}
<ul class="ul-none">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-disc">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-circle">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-square">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-decimal">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-lower-alpha">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-upper-roman">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-decimal-leading-zero">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-lower-roman">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>
<ul class="ul-upper-roman">
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
<li>리스트 타입 데모</li>
</ul>

효과: 예제 효과

리스트 마커

리스트 항목의 마커 위치(내부 또는 외부)를 설정합니다. inside 내부, outside 외부

예제:

.ul-inside{
list-style-position: inside;
}
.ul-outside{
list-style-position: outside;
}
li{
background-color: aquamarine;
}
<ul class="ul-inside">
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
</ul>
<ul class="ul-outside">
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
</ul>

효과: 예제 효과

리스트 이미지

리스트 마커의 이미지를 설정하며, 이미지의 URL 주소로 설정할 수 있습니다.

예제:

.ul-image1{
list-style-image: url("li1.png");
}
.ul-image2{
list-style-image: url("li2.png");
}
.ul-image3{
list-style-image: url("li3.png");
}
<ul class="ul-image1">
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
</ul>
<ul class="ul-image2">
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
</ul>
<ul class="ul-image3">
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
</ul>

효과:

예제 효과 ul을 통해 설정한 크기는 이미지가 늘어나거나 압축될 수 있으므로, 편집 도구를 사용하여 이미지의 원본 크기를 설정하는 것이 좋습니다. 이미지 자체를 변경하지 않고 리스트 항목에서 이미지의 표시 크기를 조정하려면 libackground-image(배경 이미지)를 사용하여 리스트 이미지를 유연하게 제어할 수 있습니다.

예제:

li{
list-style-type: none;
background-image: url("li1.png");
background-size: 10px 10px;
background-repeat: no-repeat;
background-position: 2px center;
padding-left: 20px;
}
<ul>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
<li>리스트 마커 데모</li>
</ul>

효과: 예제 효과 단축 표기법: list-style 속성은 리스트 항목 마커의 세 가지 스타일 속성인 list-style-type, list-style-position, list-style-image를 동시에 설정하는 데 사용됩니다. 값을 생략할 수 있지만 순서는 변경할 수 없습니다.

예제:

ul{
list-style: square inside url('li1.png');
}

테이블

CSS에서 border 등 여러 속성을 통해 테이블의 외관과 레이아웃을 제어할 수 있습니다.

border

테이블의 테두리를 정의하며, 테두리의 너비, 색상 및 스타일을 설정할 수 있습니다.

예제:

table {
border: 1px solid red;
}
<table>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>

효과:

예제 효과

th td

CSS에서 th, td는 테이블의 헤더, 테이블 행 및 테이블 데이터 셀의 스타일을 제어할 수 있습니다.

예제:

table {
border: 1px solid red;
}
th {
background-color: #d6d7d8; /* 헤더 배경색 설정 */
color: #333; /* 헤더 텍스트 색상 설정 */
font-weight: bold; /* 헤더 텍스트 굵게 설정 */
padding: 10px; /* 헤더 패딩 설정 */
text-align: center; /* 텍스트 가운데 정렬 설정 */
}
td {
border: 1px solid green; /* 행 사이의 하단 테두리 설정 */
padding: 8px; /* 셀 패딩 설정 */
text-align: center; /* 텍스트 가운데 정렬 설정 */
}
<table>
<tr>
<th>테이블 데모 1</th>
<th>테이블 데모 2</th>
<th>테이블 데모 3</th>
<th>테이블 데모 4</th>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>

효과:

예제 효과

border-collapse

테이블의 인접 테두리 병합 방식을 제어하는 속성입니다.

  • separate: 테두리를 병합하지 않으며, 테이블의 테두리가 독립적으로 유지됩니다.
  • collapse: 테두리를 병합하며, 테이블의 테두리가 하나로 합쳐집니다.

예제:

.table1 {
border: 2px solid red;
border-collapse: separate;
}
.table2 {
border: 2px solid red;
border-collapse: collapse;
}
<table class="table1">
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>
<table class="table2">
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>

효과:

예제 효과

border-spacing

테이블의 테두리 간격을 정의하며, 테두리 사이의 간격을 설정할 수 있습니다.

예제:

table {
border: 1px solid red;
border-spacing: 10px;
}
<table>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>

효과:

예제 효과

table-layout

테이블의 레이아웃 방식을 정의합니다.

  • auto: 자동 레이아웃, 테이블의 너비와 높이가 콘텐츠에 의해 결정됩니다.
  • fixed: 고정 레이아웃, 테이블의 너비와 높이가 지정된 값에 의해 결정됩니다.

예제:

.table1 {
border: 1px solid red;
table-layout: auto;
width: 100%;
}
.table2 {
border: 1px solid red;
table-layout: fixed;
width: 100%;
}
th, td {
border: 1px solid red;
}
<table class="table1">
<tr>
<td>테이블 데모 1테이블 데모 1테이블 데모 1테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>
<br>
<table class="table2">
<tr>
<td>테이블 데모 1테이블 데모 1테이블 데모 1테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>

효과:

예제 효과

caption-side

헤더의 위치를 정의하며, 다음 값을 설정할 수 있습니다.

  • top: 헤더가 테이블의 상단에 위치합니다.
  • bottom: 헤더가 테이블의 하단에 위치합니다.

예제:

.table1 {
border: 1px solid red;
caption-side: top;
}
.table2 {
border: 1px solid red;
caption-side: bottom;
}
<table class="table1">
<caption>헤더 데모 ABC123</caption>
<tr>
<td>테이블 데모 1테이블 데모 1테이블 데모 1테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>
<br>
<table class="table2">
<caption>헤더 데모 ABC123</caption>
<tr>
<td>테이블 데모 1테이블 데모 1테이블 데모 1테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
<tr>
<td>테이블 데모 1</td>
<td>테이블 데모 2</td>
<td>테이블 데모 3</td>
<td>테이블 데모 4</td>
</tr>
</table>

효과: 예제 효과

공유:

댓글