23.6.15 TIL

๊น€์ง„์ฃผยท2023๋…„ 6์›” 15์ผ
0

TJL(Today Jinju Learned)

๋ชฉ๋ก ๋ณด๊ธฐ
14/35

๐Ÿ“Œ ์›น์นดํŽ˜๋ฅผ ๋งŒ๋“ค๋ฉด์„œ ๋ฐฐ์šฐ๋Š” css

flex๋ฅผ ์ด์šฉํ•˜์—ฌ item์„ ์–‘์˜†์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ๋ฒ•

๐Ÿงš๐Ÿผ๋‚ด ๋ฐฉ์‹

/* ๊ณตํ†ต ๊ฒŒ์‹œํŒ */
.board {
  position: relative;
}
.board__list {
  list-style: none;
  padding-left: 0;
}
.board__item {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.board__link {
  width: 80%;
  display: block;
  line-height: 25.6px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.board__more {
  position: absolute;
  top: 0;
  right: 0;
}


ํ…์ŠคํŠธ๊ฐ€ ๋„˜์น˜๋ฉด ...์œผ๋กœ ํ‘œ์‹œ
๐Ÿ‘ฉ๐Ÿผโ€๐Ÿซ ๊ฐ•์‚ฌ๋‹˜ ๋ฐฉ์‹

.board__item {
  display: flex;
  flex-flow: row nowrap;
}
.board__link {
  /* ๋นˆ๊ณต๊ฐ„๋งŒํผ ์ž๋ฆฌ ์ฐจ์ง€ */
  flex-grow: 1;
  /* ๊ฐœํ–‰ ๊ธˆ์ง€ */
  white-space: nowrap;
  /* ํ…์ŠคํŠธ๊ฐ€ ๋„˜์น˜๋ฉด ...์œผ๋กœ ํ‘œ์‹œ  */
  overflow: hidden;
  text-overflow: ellipsis;
  background-color: aqua;
}
.board__date {
  /* ์ž๋ฆฌ ์ถ•์†Œ */
  flex-shrink: 0;
}


๐Ÿงทdata-tooltip ์‚ฌ์šฉ์ž ์ •์˜ ์†์„ฑ

<ol class="favorite__list">
   <li class="favorite__item">
       <a href="#" data-tooltip="๋ ˆ์ด์•„์›ƒ์„ ๋ฐฐ์šฐ์ž" class="favorite__link">
       <span class="fas fa-external-link-alt accentFavorite" aria-hidden="true"></span> 
       Learn CSS Layout</a>
   </li>
   <li class="favorite__item">
       <a href="#" data-tooltip="๊ฒŒ์ด๋จธ์ฒ˜๋Ÿผ flex" class="favorite__link">
       <span class="fas fa-external-link-alt accentFavorite" aria-hidden="true"></span> 
       Flexbox Froggy</a>
   </li>
   <li class="favorite__item">
       <a href="#" data-tooltip="๋†์žฅ์ฃผ ๋˜๊ธฐ Grid " class="favorite__link">
       <span class="fas fa-external-link-alt accentFavorite" aria-hidden="true"></span> 
       CSS Grid Garden</a>
   </li>
   <li class="favorite__item">
       <a href="#" data-tooltip="์ตœ๊ณ ์˜ ์›น๊ต๊ณผ์„œ MDN" class="favorite__link"><span class="fas fa-external-link-alt accentFavorite" aria-hidden="true"></span> MDN Web Docs</a>
   </li>
</ol>

data-tooltip์„ ์‚ฌ์šฉํ•˜๋ฉด ์‚ฌ์šฉ์ž ์ •์˜ ์†์„ฑ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

.favorite__link:hover::after {
  /* a์— ํ• ๋‹นํ•œ ์  ์žˆ์—ˆ๋˜ ํ…์ŠคํŠธ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ */
  content: attr(data-tooltip);
  position: absolute;
  top: 0.5em;
  margin-left: 1em;
  background-color: #000;
  color: #fff;
  padding: 0.5em;
  opacity: 1;
  border-radius: 5px;
  font-size: var(--text-sm);
}

attr(data-tooltip)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด li ๊ฐœ์ˆ˜๋งŒํผ li::nth-child ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๊ฐ๊ฐ์˜ ํ…์ŠคํŠธ๋ฅผ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.


๐Ÿงท inline-flex

.twitter__userInfo {
  background-color: burlywood;
  margin-top: var(--spacing-sm);
  display: flex;
}


โš ๏ธ ์ด๋ฏธ์ง€๋ฅผ twitter__userInfo์—์„œ ์‹œ์ž‘ํ•˜๊ฒŒ ํ•˜๊ณ  ์‹ถ์€๋ฐ flex๋Š” ๋ฐ•์Šค ๋ชจ๋ธ์ด๋ผ ์ด๋ฏธ์ง€๊ฐ€ ์˜ฌ๋ผ์˜ค์ง€ ๋ชปํ•œ๋‹ค.

.twitter__userInfo {
  background-color: burlywood;
  margin-top: var(--spacing-sm);
  display: inline-flex;


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

ํŠน์ง•

  • ์š”์†Œ๋“ค์ด ํ•„์š”ํ•œ ๋งŒํผ๋งŒ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜๋ฉฐ, ๋‚ด์šฉ์— ๋”ฐ๋ผ ์œ ์—ฐํ•˜๊ฒŒ ํฌ๊ธฐ๊ฐ€ ์กฐ์ ˆ๋œ๋‹ค.
  • ์š”์†Œ๋“ค ์‚ฌ์ด์— ๊ณต๊ฐ„ ๋ถ„๋ฐฐ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค.

width ๊ฐ’ ๋‹จ์ถ•์†์„ฑ

  width: 20%;
  min-width: 60px;
  max-width: 80px;
  /* min-w w max-w */
  width: clamp(60px, 20%, 80px);

๐Ÿ“–์ฝ์–ด๋ณด๊ธฐ~!!

flexbox๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” 10๊ฐ€์ง€ ๋ ˆ์ด์•„์›ƒ

profile
์ง„์ฃผ๋ง๋”ฉ๋™๐ŸŽต

0๊ฐœ์˜ ๋Œ“๊ธ€