본문 바로가기

   
Programming/CSS

CSS display 활용 div 레이아웃 샘플 소스

반응형

CSS display 활용 div 레이아웃 샘플 소스

HTML 레이아웃을 구성하며 CSS display 속성 중 table을 사용한 기억이 많이 없는데 일반 div를 사용하는 것보다 간편하고 깔끔하게 화면 구성이 가능한 것 같습니다.

물론 상황에 따라 조금 다를 수 있겠지만 브라우저 사이즈에 따라 레이아웃이 고정되어 안정적으로 표시되어 모바일 화면을 구성할 때도 꽤 괜찮을 것 같습니다. 웹이나 모바일 화면을 구성하게 될 일이 생긴다면 간단히 이 샘플 소스를 활용할 목적으로 작성하였습니다.

 

소스

<!doctype html>
<html>
<head>
	<meta charset="utf-8">
	<title>table display 연습</title>
	<style>
      div {
        border: 1px solid #bcbcbc;
		background-color: aliceblue;
      }
	  #top, #footer{
		width:100%;
		height: 90px;
		margin-bottom: 10px;
		background-color: beige;
	  }

	  #table-main{
		width:80%;
		height: 470px;
		margin-bottom: 10px;
	  }

	  #table-right{
		width:20%;
		height: 470px;
		margin-bottom: 10px;
	  }

      .mainline, .middleline {
        display: table;
        width: 100%;
		margin-bottom: 10px;
      }
      .table-row {
        display: table-row;
      }
      .table-cell {
        display: table-cell;
        padding: 0px 20px;
        height: 150px;
      }

      .md-middle {
        vertical-align: middle;
      }

	</style>
</head>
<body>
	<div id="top">
		<p>top</p>
	</div>

    <div class="mainline">

      <div class="table-row">
        <div id="table-main" class="table-cell">
          <p>1(main_big)</p>
        </div>
        <div id="table-right" class="table-cell">
          <p>2(right_sub)</p>
        </div>
      </div>

    </div>

	<div class="middleline">
      <div class="table-row">
        <div class="md-middle">
          <p>5</p>
        </div>
        <div class="md-middle">
          <p>6</p>
        </div>
        <div class="md-middle">
          <p>7</p>
        </div>
        <div class="md-middle">
          <p>8</p>
        </div>
        <div class="table-cell md-middle">
          <p>9</p>
        </div>
        <div class="table-cell md-middle">
          <p>10</p>
        </div>
        <div class="md-middle">
          <p>11</p>
        </div>
        <div class="md-middle">
          <p>12</p>
        </div>
        <div class="md-middle">
          <p>13</p>
        </div>
        <div class="md-middle">
          <p>14</p>
        </div>
        <div class="table-cell md-middle">
          <p>15</p>
        </div>
        <div class="table-cell md-middle">
          <p>16</p>
        </div>
        <div class="table-cell md-middle">
          <p>17</p>
        </div>
        <div class="table-cell md-middle">
          <p>18</p>
        </div>
      </div>
	</div>

	<div id="footer">
		<p>footer</p>
	</div>
</body>
</html>

 

결과화면


 

CSS display의 table, table-row, table-cell만 활용하면 어렵지 않게 화면을 분할하거나 나눌 때 독립된 div 태그와 같이 활용하면 화면 구성을 손쉽게 표현할 수 있습니다.

 

웹, MOBILE 화면을 구성할 때 개인적으로 CSS display 활용할 수 있도록 기억해야겠습니다.

반응형