Frontend/CSS

[CSS] Bootstrap ํƒญ ์‚ฌ์šฉ๋ฒ•

_์„ฑํ˜ธ_ 2022. 4. 4. 00:41
728x90
๋ฐ˜์‘ํ˜•

์›น ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด์„œ ํƒญ์€ ๋งค์šฐ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์‚ฌ์ง„์€ ์ œ๊ฐ€ ์ง์ ‘ Bootstrap์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“  ํƒญ ์ž…๋‹ˆ๋‹ค.

์ฐจ๋ก€๋Œ€๋กœ ํƒญ ์‚ฌ์šฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ๋ ค๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

 

โ— ์™ธ๋ถ€ ์Šคํƒ€์ผ์‹œํŠธ ์ ์šฉ

<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">

๊ธฐ๋ณธ์ ์œผ๋กœ <head> ํƒœ๊ทธ ์•ˆ์— ๋„ฃ์–ด ์ฃผ์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

โ— ํƒญ ๋ฉ”๋‰ด ๊ตฌ์„ฑ

<ul class="nav nav-tabs" id="myTab" role="tablist">
          <li class="nav-item" role="presentation">
            <button
              class="nav-link active"
              id="saleList-tab"
              data-bs-toggle="tab"
              data-bs-target="#saleList"
              type="button"
              role="tab"
              aria-controls="saleList"
              aria-selected="true"
            >
              ํŒ๋งคํ˜„ํ™ฉ
            </button>
          </li>
          <li class="nav-item" role="presentation">
            <button
              class="nav-link"
              id="myreview-tab"
              data-bs-toggle="tab"
              data-bs-target="#purchaseList"
              type="button"
              role="tab"
              aria-controls="purchaseList"
              aria-selected="false"
            >
              ๊ตฌ๋งคํ˜„ํ™ฉ
            </button>
          </li>
</ul>

<ul>, <li> ํƒœ๊ทธ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ˆœ์„œ ์—†๋Š” ๋ชฉ๋ก์„ ๋งŒ๋“ค๊ณ  ๋ฒ„ํŠผ์œผ๋กœ ํƒญ ๋ฉ”๋‰ด๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

 

โ— ๋ฉ”๋‰ด๋ณ„ ๋‚ด์šฉ ๊ตฌ์„ฑ

        <div class="tab-content" id="myTabContent">
          <div
            class="tab-pane fade show active"
            id="saleList-tab"
            role="tabpanel"
            aria-labelledby="saleList"
          >
            <table class="tb-w100 text-center">
              <colgroup>
                <col style="width: 30%" />
                <col style="width: 20%" />
                <col style="width: 20%" />
                <col style="width: 30%" />
              </colgroup>
              <tr>
                <th>์ƒํ’ˆ๋ช…</th>
                <th>์ตœ๊ณ ์ž…์ฐฐ๊ฐ€</th>
                <th>๊ฒฝ๋งค์ƒํƒœ</th>
                <th>๋‚จ์€ ๋งˆ๊ฐ์‹œ๊ฐ„</th>
              </tr>
              <tr>
                <td>HTML</td>
                <td></td>
                <td></td>
                <td></td>
              </tr>
              <tr>
                <td>CSS</td>
                <td></td>
                <td></td>
                <td></td>
              </tr>
              <tr>
                <td>JAVASCRIPT</td>
                <td></td>
                <td></td>
                <td></td>
              </tr>
              <tr>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
              </tr>
            </table>
          </div>
          <div
            class="tab-pane fade"
            id="purchaseList"
            role="tabpanel"
            aria-labelledby="purchaseList-tab"
          >
            ...
          </div>
        </div>
  • <table> ํƒœ๊ทธ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฉ”๋‰ด๋ณ„ ๋‚ด์šฉ์„ ๊ตฌ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • <colgroup> ํƒœ๊ทธ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ ์—ด๋งˆ๋‹ค ๋„ˆ๋น„๋ฅผ ์ง€์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

 

โ— ํƒญ ์ „ํ™˜ JS ์ ์šฉ

<script>
          let key = '${param.key}';
          console.log(key);
          if (key === 'saleList') {
            $('#buyList-tab').removeClass('active');
            $('#saleList-tab').addClass('active');

            $('#buyList').removeClass('show active');
            $('#saleList').addClass('show active');
          } else if (key === 'buyList') {
            $('#saleList-tab').removeClass('active');
            $('#buyList-tab').addClass('active');

            $('#saleList').removeClass('show active');
            $('#buyList').addClass('show active');
          }
</script>

 

โ— Bootstrap JavaScript plugin ์ ์šฉ

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>

<script>๋ฅผ </body> ํƒœ๊ทธ๊ฐ€ ๋‹ซํžˆ๊ธฐ ์ „์— ํŽ˜์ด์ง€ ๋ ๋ถ€๋ถ„์— ๋„ฃ์–ด ํ™œ์„ฑํ™” ์‹œํ‚ต๋‹ˆ๋‹ค.

์ง€๊ธˆ๊นŒ์ง€ Bootstrap ํƒญ ์‚ฌ์šฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค!