๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
IT/JavaScript

[CSS] ๋ฒ„ํŠผ CSS ํšจ๊ณผ (์ž…๋ ฅ input ์นธ, ๋“œ๋กญ๋‹ค์šด dropdown ๋ฉ”๋‰ด ๊พธ๋ฏธ๊ธฐ)

by ITyranno 2024. 1. 6.
728x90
๋ฐ˜์‘ํ˜•

 

 

 

 

 

 

 

 

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์„ธ๊ณ„๋ฅผ ํƒ๊ตฌํ•ฉ์‹œ๋‹ค.

 

 

 

 

 

 

 

 

CSS ํšจ๊ณผ (์ž…๋ ฅ input ์นธ, ๋ฒ„ํŠผ, ๋“œ๋กญ๋‹ค์šด dropdown ๋ฉ”๋‰ด ๊พธ๋ฏธ๊ธฐ)

 

 

CSS ํšจ๊ณผ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ž…๋ ฅ ์นธ, ๋ฒ„ํŠผ, ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด๋ฅผ ๊พธ๋ฐ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

 

๊ตฌํ˜„ ํ™”๋ฉด

 

 

์ž…๋ ฅ ์นธ์— 1955๋…„~2070๋…„ ์‚ฌ์ด์˜ ์—ฐ๋„๋งŒ ์ž…๋ ฅํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.๋ฅผ placeholder๋กœ ๊ธฐ๋ณธ์œผ๋กœ ๋‚˜ํƒ€๋‚˜๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ž…๋ ฅ ์นธ์„ ํด๋ฆญํ•  ์‹œ ๋ฌธ๊ตฌ๊ฐ€ ์‚ฌ๋ผ์ง€๊ณ  ๊ทธ๋ฆผ์ž ํšจ๊ณผ์™€ ํ•จ๊ป˜ ์–ธ๋”๋ฐ” ์ƒ‰์ด ์ง„ํ•˜๊ฒŒ ๋ณ€ํ•˜๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค.

 

๋“œ๋กญ๋‹ค์šด๋˜ํ•œ ์„ ํƒํ–ˆ์„ ๋•Œ ์ƒ‰์ด ๋ณ€ํ•˜๋„๋ก ํ•˜์˜€์œผ๋ฉฐ, ํ™•์ธ ๋ฒ„ํŠผ์€ ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ hoverํšจ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚˜๋„๋ก ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

 

 

 

 

 

 

 

 

 

 

 

์ž‘์„ฑ ์ฝ”๋“œ

 

 

powerprice.html

 

  <div id="powerprice-container">
    <div id="input-container">
      <input type="number" id="powerprice-yearInput" min="0" placeholder="1955๋…„~2070๋…„ ์‚ฌ์ด์˜ ์—ฐ๋„๋งŒ ์ž…๋ ฅํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค." />
      <select class="year-dropdown" id="year-dropdown" onchange="updateYearInput()">
        <script>
          for (let i = 1955; i <= 2070; i++) {
            document.write('<option value="' + i + '">' + i + '</option>');
          }
        </script>
      </select>
    </div>
    <button onclick="getPowerPrice()">ํ™•์ธ</button>
  </div>
  <p id="powerprice-result"></p> <!-- ์—ฌ๊ธฐ์— ๊ฒฐ๊ณผ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. -->

 

 

 

powerprice.css

 

.year-dropdown {
  /* ๋ณ€๊ฒฝํ•˜๊ณ ์ž ํ•˜๋Š” ์Šคํƒ€์ผ ์ถ”๊ฐ€ */
  font-size: 16px;
  /* ๊ธ€์ž ํฌ๊ธฐ๋ฅผ ํฌ๊ฒŒ ์„ค์ • */
  border: 2px solid #ce295b30;
  /* ํ…Œ๋‘๋ฆฌ๋ฅผ ์ดˆ๋ก์ƒ‰์œผ๋กœ ์„ค์ • */
  padding: 0.7rem;
  /* ๋‚ด๋ถ€ ์—ฌ๋ฐฑ ์„ค์ • */
}

.year-dropdown:focus {
  border-color: #ce295b;
  /* ํด๋ฆญํ–ˆ์„ ๋•Œ ํ…Œ๋‘๋ฆฌ ์ƒ‰์„ ๋ณ€๊ฒฝ */
}

#powerprice-result {
  min-height: 3rem;
}

/* ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์™€๋„ ์ฐจํŠธ๊ฐ€ ์›€์ง์ด์ง€ ์•Š๋„๋ก */

#powerprice-container {
  display: flex;
  flex-direction: row;
  /* ์ถ”๊ฐ€: ์•„์ดํ…œ๋“ค์„ ์ˆ˜์ง์œผ๋กœ ๋ฐฐ์—ด */
  align-items: center;
  /* ๋ณ€๊ฒฝ: ์•„์ดํ…œ๋“ค์„ ๊ฐ€์šด๋ฐ๋กœ ์ •๋ ฌ */
  justify-content: center;
  /* ์ถ”๊ฐ€: ์ˆ˜ํ‰ ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€์šด๋ฐ ์ •๋ ฌ */
  min-width: 70rem;
}

#input-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 44%;
  /* ์ถ”๊ฐ€: ๋ถ€๋ชจ ์š”์†Œ์˜ ์ „์ฒด ๋„ˆ๋น„๋ฅผ ์ฐจ์ง€ํ•˜๋„๋ก ์„ค์ • */
}

#powerprice-yearInput {
  height: 2.5rem;
  width: 25rem;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 3px solid #ce295b30;
  padding-left: 1rem;
  margin-bottom: 3rem;
  font-family: "GongGothicLight", sans-serif;
  font-size: 0.9rem;
  margin-top: 3rem;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  /* ํด๋ฆญ ์‹œ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ๊ณผ ๊ทธ๋ฆผ์ž ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋ณ€๊ฒฝ */
}

#powerprice-yearInput::placeholder {
  font-family: "GongGothicLight", sans-serif;
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.329);
}

#powerprice-yearInput:focus::placeholder {
  color: white;
  /* padding-left: 2rem; */
}

#powerprice-yearInput:focus {
  outline: none;
  /* ๊ธฐ๋ณธ ํ…Œ๋‘๋ฆฌ ์ œ๊ฑฐ */
  border-color: #ce295b;
  /* ํด๋ฆญ ์‹œ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ๋ณ€๊ฒฝ */
  box-shadow: inset 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
  /* ํด๋ฆญ ์‹œ ๋‚ด๋ถ€ ๊ทธ๋ฆผ์ž ํšจ๊ณผ */
  padding-left: 1rem;
  caret-color: #ce295b9f;
}

button {
  background-color: #ff69b47a;
  /* ๋ถ„ํ™์ƒ‰์œผ๋กœ ๋ฒ„ํŠผ ์ƒ‰์ƒ ์„ค์ • */
  color: white;
  /* ๋ฒ„ํŠผ ๋‚ด์šฉ(ํ…์ŠคํŠธ)์„ ํฐ์ƒ‰์œผ๋กœ ์„ค์ • */
  border: none;
  /* ํ…Œ๋‘๋ฆฌ ์ œ๊ฑฐ */
  padding: 0.72rem 1rem;
  /* ๋‚ด๋ถ€ ์—ฌ๋ฐฑ ์„ค์ • */
  text-align: center;
  /* ํ…์ŠคํŠธ๋ฅผ ์ค‘์•™์œผ๋กœ ์ •๋ ฌ */
  display: inline-block;
  font-size: 16px;
  transition: all 0.5s;
  /* ํšจ๊ณผ๋ฅผ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด transition ์†์„ฑ ์ถ”๊ฐ€ */
  cursor: pointer;
  /* ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ ์ปค์„œ ๋ชจ์–‘ ๋ณ€๊ฒฝ */
}

button:hover {
  background-color: #ce295b;
  /* ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ์˜ ๋ฒ„ํŠผ ์ƒ‰์ƒ ๋ณ€๊ฒฝ */
  color: white;
  /* ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ์˜ ํ…์ŠคํŠธ ์ƒ‰์ƒ ์„ค์ • */
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);
  /* ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ ๊ทธ๋ฆผ์ž ํšจ๊ณผ ์ถ”๊ฐ€ */
}

 

 

 

 

 

๊ตฌํ˜„ ํ™”๋ฉด์„ ๋” ์ƒ์„ธํžˆ ํ™•์ธํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜ ์‚ฌ์ดํŠธ ์ฐธ๊ณ  ๋ฐ”๋ž๋‹ˆ๋‹ค.

 

 

https://ityrannosaurus.github.io/power/

 

๋‚ด์ผ์˜ ์ „๊ธฐ์„ธ

scikit-learn ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ํ˜•ํšŒ๊ท€(Linear Regression) ๋ฐฉ์‹์œผ๋กœ ์˜ˆ์ธก์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ 2070๋…„๊นŒ์ง€์˜ ์˜ˆ์ธก๊ฐ’์„ ์ถœ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.

ityrannosaurus.github.io

 

 

 

 

 

 

728x90
๋ฐ˜์‘ํ˜•

loading