์ ์ฒด ๊ธ
-
[CSS] accent-color ์์ฑ์ผ๋ก ํผ ์์ ์คํ์ผ๋งํ๊ธฐCoding 2025. 3. 6. 22:21
์น์ฌ์ดํธ์์ ์ฒดํฌ๋ฐ์ค, ๋ผ๋์ค ๋ฒํผ, ํ๋ก๊ทธ๋ ์ค ๋ฐ ๋ฑ ๊ธฐ๋ณธ UI ์์์ ์์์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ์ข ์ข ๊น๋ค๋กญ์ต๋๋ค.CSS์ accent-color ์์ฑ์ ์ฌ์ฉํ๋ฉด ํ ์ค์ ์ฝ๋๋ก ์์ฝ๊ฒ ์ฃผ์ UI ์์์ ์์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.accent-color๋ฅผ ์ฌ์ฉํ ์ ์๋ HTML ์์HTML ์์์ฒดํฌ๋ฐ์ค & ๋ผ๋์ค ๋ฒํผ ์์ ๋ณ๊ฒฝ์ฒดํฌ๋ฐ์ค๋ผ๋์ค ๋ฒํผinput { accent-color: #3498db; /* ํ๋์ */} ์ฒดํฌ๋ฐ์ค์ ๋ผ๋์ค ๋ฒํผ์ ๊ธฐ๋ณธ ๊ฐ์กฐ ์์์ด ํ๋์(#3498db) ์ผ๋ก ๋ณ๊ฒฝ๋ฉ๋๋ค. ์ฌ๋ผ์ด๋ & ํ๋ก๊ทธ๋ ์ค ๋ฐ ์คํ์ผ ๋ณ๊ฒฝ๋ฒ์ ์ฌ๋ผ์ด๋ํ๋ก๊ทธ๋ ์ค ๋ฐinput[type="range"], progress { accent-color: #e74c3c; /* ๋นจ๊ฐ์ */} range์ progr..
-
[CSS] filter: invert() ์ฌ์ฉ๋ฒCoding 2025. 3. 5. 20:42
CSS์ filter ์์ฑ์ ์ด๋ฏธ์ง๋ ์์์ ๋ค์ํ ์๊ฐ์ ํจ๊ณผ๋ฅผ ์ ์ฉํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.๊ทธ์ค invert() ํํฐ๋ ์์์ ๋ฐ์ ์์ผ ๋ฐ์ ์์ ์ด๋ก๊ฒ, ์ด๋์ด ์์ ๋ฐ๊ฒ ํํํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.์ฆ, ํฐ์(white)์ ๊ฒ์์(black)์ผ๋ก, ํ๋์(blue)์ ์ฃผํฉ์(orange)์ผ๋ก ๋ณํ๋ฉ๋๋ค.๊ธฐ๋ณธ ๋ฌธ๋ฒfilter: invert(๊ฐ); ๊ฐ์ 0์์ 1 ์ฌ์ด์ **๋น์จ(%)**์ ์๋ฏธํฉ๋๋ค.invert(0) → ์๋ ์์ ์ ์งinvert(1) → 100% ๋ฐ์ (์์ ๋ฐ๋ ์์)invert(0.5) → 50% ๋ฐ์ (๋ถ๋ถ์ ์ผ๋ก ๋ฐ์ ๋ ์์)์ด๋ฏธ์ง ์์ ๋ฐ์ invert()๋ ํนํ ์ด๋ฏธ์ง ์์์ ๋ฐ์ ํ๋ ๋ฐ ์ ์ฉํฉ๋๋ค. See the Pen Untitled by jjung (@jjung2) on C..
-
[CSS] Grid vs Flexbox: ์ด๋ค ์ํฉ์์ ์ด๋ค ๊ฑธ ์ ํํด์ผ ํ ๊น?Coding 2025. 3. 4. 21:02
CSS ๋ ์ด์์์ ๊ตฌ์ฑํ ๋ Grid์ Flexbox๋ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ ๊ฐ์ง ๋๊ตฌ์ ๋๋ค. ํ์ง๋ง ๊ฐ๊ฐ์ ํน์ง๊ณผ ํ์ฉ๋ฒ์ ์ดํดํ์ง ๋ชปํ๋ฉด ์ธ์ ์ด๋ค ๊ฒ์ ์จ์ผ ํ ์ง ํท๊ฐ๋ฆด ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก CSS Grid์ Flexbox์ ์ฐจ์ด์ ์ ๋น๊ตํ๊ณ , ๊ฐ๊ฐ์ ์ธ์ ์ฌ์ฉํด์ผ ํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค.๊ธฐ๋ณธ๊ฐ๋ GridFlexCSS Grid๋ 2์ฐจ์(ํ๊ณผ ์ด) ๋ ์ด์์ ์์คํ ์ ๋๋ค.๋ถ๋ชจ ์์๊ฐ ์ ์ฒด ๋ ์ด์์์ ์ค์ ํ๋ฉฐ, ์์ ์์๋ค์ ๊ฒฉ์(grid) ๊ตฌ์กฐ์ ๋ฐฐ์นํ ์ ์์ต๋๋ค.Flexbox๋ 1์ฐจ์(๊ฐ๋ก ๋๋ ์ธ๋ก) ๋ ์ด์์ ์์คํ ์ ๋๋ค.์์๋ฅผ ํ(Row) ๋๋ ์ด(Column) ๋ฐฉํฅ์ผ๋ก ๋ฐฐ์นํ๊ณ ์ ๋ ฌํ ๋ ์ ์ฉํฉ๋๋ค.ํ(Row)๊ณผ ์ด(Column) ๋ชจ๋๋ฅผ ์กฐ์ ๊ฐ๋ฅ์ ๋ ฌ๊ณผ ๋ฐฐ์น๊ฐ ์ง๊ด์ ๋ณต์กํ ๋ ์ด์์์ ์ ๋ฆฌํ ๋ฐฉ..
-
[CSS] linear-gradient() ์ฌ์ฉํ๊ธฐCoding 2024. 8. 12. 23:55
์น ํ๋ฉด์ ๊ฐ๋ฐํ๋ค ๋ณด๋ฉด ๊ฐ๋ ๊ทธ๋ผ๋ฐ์ด์ ๋ง์คํฌ๋ฅผ ์ฌ์ฉํด์ผ ํ ์ผ์ด ์๊น๋๋ค.์์ฃผ ์ฐ๋ ์คํ์ผ์ด ์๋๋ค ๋ณด๋ ๋งค๋ฒ ๊ฒ์ํ๊ฒ ๋ผ์ ๋ธ๋ก๊ทธ์ ๋จ๊ฒจ ๋ด ๋๋ค. linear-gradient()๋ ํ๋์ ์์์์ ๋ค๋ฅธ ์์์ผ๋ก ๋ถ๋๋ฝ๊ฒ ์ด์ด์ง๋ ๋ฐฐ๊ฒฝ์ ๋ง๋ค ์ ์์ต๋๋ค.๊ธฐ๋ณธ๋ฌธ๋ฒbackground: linear-gradient(direction, color-stop1, color-stop2, ...); direction (๋ฐฉํฅ): ๊ทธ๋ผ๋์ธํธ๊ฐ ์ ์ฉ๋ ๋ฐฉํฅ์ ์ง์ ํฉ๋๋ค. ๊ฐ๋(์: 45deg), ํค์๋(์: to right, to bottom), ๋๋ ๊ธฐ๋ณธ๊ฐ(to bottom)์ ์ฌ์ฉํ ์ ์์ต๋๋ค.color-stop (์์ ์ง์ ): ๊ทธ๋ผ๋์ธํธ๊ฐ ์์๋๊ฑฐ๋ ๋๋๋ ์์์ ์ง์ ํฉ๋๋ค. ์์ ์ด๋ฆ, HEX ์ฝ๋, RGB..
-
[GSAP] scrollTo() ํจ์ ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒCoding 2024. 6. 2. 23:06
scrollTo()GSAP์์ ScrollToPlugin์ ์ฌ์ฉํด ๋ธ๋ผ์ฐ์ ์คํฌ๋กค์ ํน์ ์์น๋ก ๋ถ๋๋ฝ๊ฒ ์คํฌ๋กคํ ์ ์์ต๋๋ค. ์ฐ์ ๊ธฐ๋ณธ์ ์ผ๋ก gsap๊ณผ ScrollToPlugin์ ํ๋ก์ ํธ์ ๋ถ๋ฌ์์ผํฉ๋๋ค.cdn์ ํตํด ๋ถ๋ฌ์ค๊ฒ ์ต๋๋ค. ์ฐฝ์ ์์์ 500px ์์น๋ก ์คํฌ๋กค ์ด๋ํ๋ ค๋ฉด์ฐ์ 'gsap.to()' ํจ์๋ฅผ ํธ์ถํ๊ณ 'scrollTo' ์์ฑ์ ์ซ์ 500์ ๋ฃ์ด์ ๊ฐ๋จํ๊ฒ ์ด๋์ํฌ ์ ์์ต๋๋ค.gsap.to(window, {duration: 1, scrollTo: 500}); ํน์ ์์๋ก ์คํฌ๋กคํ ์๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, '#section2'๋ผ๋ ์์๋ก ์คํฌ๋กคํ๋ ค๋ฉด ์๋์ฒ๋ผ ์ ์ด์ฃผ๋ฉด ๋ฉ๋๋ค.gsap.to(window, {duration: 1, scrollTo: "#section2"}); ..
-
[GSAP] ScrollTrigger ์์ ์์ ๋ฆฌํด ๊ฐ ์ป๋ ๋ฐฉ๋ฒCoding 2024. 3. 5. 22:15
var myScrollTrigger = ScrollTrigger.create({ trigger: "#id", start: "top top", endTrigger: "#otherID", end: "bottom 50%+=100px", }); // ScrollTrigger ์์ ์ง์ ์ผ๋ก ์คํฌ๋กค ํฌ์ปค์ค ๊ฐ๋๋ก ๊ฐ๋ฅ gsap.to(window, { duration: 0.5, scrollTo: myScrollTrigger.start, }); ScrollTrigger [properties] start start : Number [read-only] The ScrollTrigger's starting scroll position (numeric, in pixels). Details [read-only] The Scro..
-
[SCSS] ๋ด ๊ธฐ์ค ์ ์ฉํ๊ฒ ์ฌ์ฉํ๊ณ ์๋ scss mixin ๋ชจ์Coding 2023. 7. 14. 12:11
์์ ํ๋ฉด์ ์ ์ฉํ๊ฒ ์ฌ์ฉํ๊ณ ์๋ SCSS @mixin ๋ชจ์์ ๋๋ค. ํ์ํ mixin์ด ์๊ธฐ๋ฉด ๊ณ์ ์ ๋ฐ์ดํธ ํ ์์ ์ ๋๋ค. @charset "utf-8"; /* *-------------------------------------------------------------------* | FUNCTION | *-------------------------------------------------------------------* */ @function vw($pixels) { @return ($pixels/360)*100vw; } @function grid($columns, $column) { @return percentage(1/$columns*$column); } /* *--------------..
-
[CSS] aspect-ratio ์์ฑ์ผ๋ก object ๋น์จ ๋ง์ถ๊ธฐ (+ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ง)Coding 2023. 7. 13. 11:18
Intro ๊ฐ๋ก์ธ๋ก ๋น์จ์ ๋ค๋ฃฐ ์ ์๋ aspect-ratio ์์ฑ์ ๋งค์ฐ ์ ์ฉํ ๊ธฐ๋ฅ ์ค ํ๋์ ๋๋ค. img, video, iframe, div ๋ฑ ๋ชจ๋ ํ๊ทธ์ ์ฌ์ฉ๊ฐ๋ฅํฉ๋๋ค. ์ด ์ ์ฉํ aspect-ratio ์์ฑ์ ์์ธํ ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. ์ฌ์ฉ๋ฐฉ๋ฒ ์ฌ์ฉ๋ฐฉ๋ฒ์ ๊ฐ๋จํฉ๋๋ค. .element { aspect-ratio: 16 / 9; } aspect-ratio ๋ค์ ์ํ๋ ๋น์จ์ ์ ์ด์ฃผ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค. ๋ด๊ฐ ์ํ๋ ๋น์จ์ element์ ์ ์ํ๊ณ ๋ด๋ถ object์ object-fit: cover๋ฅผ ๋ฃ์ด์ฃผ๋ฉด object๊ฐ ๋น์จ์ ๋ง๊ฒ ๊ฝ ์ฐจ๊ฒ ๋ณด์ฌ ์ค ์ ์์ต๋๋ค. .element { aspect-ratio: 16/9; overflow: hidden; } .element img { width: 10..