๋ฐ˜์‘ํ˜•

๐ŸŸฉ Frontend-HTML & CSS & +JS/๐Ÿ”ฐHTML & CSS & JQ 19

2024 4ํšŒ์ฐจ ์›น ๋””์ž์ธ ๊ธฐ๋Šฅ์‚ฌ ์‹ค๊ธฐ ๋Œ€๊ตฌ ํ›„๊ธฐ/๊ณต๋ถ€๋ฒ•/์‰ฌ์šด ์ œ์ด์ฟผ๋ฆฌ (์—๋ฐ‹ ์„ค์น˜ ๋ผ ์žˆ์—ˆ์Œ!)

์‹œํ—˜์€ ์•„์ฃผ ์ž˜ ์น˜๊ณ  ์˜จ๊ฒƒ๊ฐ™์Šต๋‹ˆ๋‹คํ›„๊ธฐ๋Š” ์•„์ฃผ ๊ฐ„๋žตํ•˜๊ฒŒ ์ •๋ฆฌํ•˜์—ฌ ์ ๊ฒ ์Šต๋‹ˆ๋‹น! ๐Ÿ“Œ์‹œํ—˜์žฅ์†Œ๋Œ€๊ตฌ ๊ณ„๋ช…๋Œ€ํ•™๊ต  (6์‹ค์˜ 1๋ฒˆ์ž๋ฆฌ ์˜€์Šต๋‹ˆ๋‹ค)  ๐Ÿ“Œ์‚ฌ์šฉํ”„๋กœ๊ทธ๋žจ  (์ผ๋Ÿฌ์ŠคํŠธ๋ผ๋˜๊ฐ€ ๋‹ค๋ฅธ๊ฒƒ๋„ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค๋งŒ ๊ตณ์ด ์•ˆ์จ๋„ ๋  ๋‚œ์ด๋„)ํฌํ† ์ƒต,VScode * ์ ์ง€ ์•Š์€ ๋ถ„๋“ค์ด emmet ๊ธฐ๋Šฅ์ด ์—†์„๊นŒ๋ด.. ์ž๋™์™„์„ฑ์ด ์•ˆ๋ ๊นŒ๋ด.. !tab ๋ˆŒ๋ €์„๋•Œ ๋‚˜์˜ค๋Š” ๊ธฐ๋ณธํผ๋“ค์„ ์™ธ์›Œ๊ฐ€์‹œ๋˜๋ฐ ์ œ๊ฐ€ ์นœ ์žฅ์†Œ์—์„œ๋Š” ๋ชจ๋‘ ์ž˜ ๋™์ž‘ํ–ˆ๋„ค์š”! ๐Ÿ“Œ ์‹œํ—˜๋ฌธ์ œ ์ฃผ์ œ ์ฒ ๊ธธ๋งˆ์„ *๊ณต๊ฐœ๋ฌธ์ œ์™€ ๋˜‘๊ฐ™์ด! ๋‚˜์™”์Šต๋‹ˆ๋‹ค  ๐Ÿ“Œ์‹œํ—˜์ง„ํ–‰ ๊ณผ์ •1. 8์‹œ 30๋ถ„(์‹œํ—˜ ์‹œ์ž‘์‹œ๊ฐ„)์— ์ž…์‹ค๊ฐ€๋Šฅ2. ์ขŒ์„๋ฒˆํ˜ธ ๋ฝ‘๊ธฐ (๋น„๋ฒˆํ˜ธ ํด๋”๋ช…์ด ์ด๋ ‡๊ฒŒ ์ •ํ•ด์ง‘๋‹ˆ๋‹ค)3. ํœด๋Œ€ํฐ ๋ฐ ์›Œ์น˜๋“ฑ์˜ ์ „์ž๊ธฐ๊ธฐ ๋ฐ˜๋‚ฉ (PASS๋กœ ์‹ ๋ถ„์ฆ์ธ์ฆ ํ•  ๋ถ„๋“ค์€ ์ด ๊ณผ์ •์—์„œ ์ธ์ฆ)4. ์‹œํ—˜๋ฌธ์ œ ๋ฐฐ๋ถ€ ํ›„, ์„ค๋ช…๋“ฃ๊ธฐ5. 9์‹œ์ฏค์— ..

[์œ ํŠœ๋ธŒ] ์œ ํŠœ๋ธŒ ifream ํ™”์งˆ ๋ณ„ ํŒŒ๋ผ๋ฏธํ„ฐ ์ •๋ฆฌ (144p, 240p, 360p ๋“ฑ๋“ฑ)

| ๋ฐฉ๋ฒ•ifream ๊ฐ€์ ธ์˜ฌ๋•Œ, ์•„๋ž˜์˜ ํ•ด์ƒ๋„๋ณ„ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•จ144p: &vq=tiny240p: &vq=small360p: &vq=medium480p: &vq=large720p: &vq=hd7201080p: &vq=hd10801440p: &vq=hd14402160p (4K): &vq=hd2160  | ์˜ˆ์‹œ์ฝ”๋“œ*loop๋‚˜ playlist ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ๋„ฃ์€ ๋ถ€๋ถ„์ด๋ผ ๋ฌด์‹œํ•˜์…”๋„ ๋ฉ๋‹ˆ๋‹ค// &vq=tiny โ€‹

[์œ ํŠœ๋ธŒ] ์œ ํŠœ๋ธŒ ๋“ฑ๋ก๋œ ์ธ๋„ค์ผ ๊ฐ€์ ธ์˜ค๊ธฐ (+์˜์ƒ ๊ฐ€์ ธ์˜ค๊ธฐ)

| ๋ฌธ์ œ์ƒํ™ฉ์˜์ƒ์ด ์žฌ์ƒ ๋˜๊ธฐ์ „, ์ธ๋„ค์ผ ์ด๋ฏธ์ง€๋ฅผ ๋ณด์—ฌ ์ฃผ๊ณ  ์‹ถ์€๋ฐ, ๋”ฐ๋กœ ์„œ๋ฒ„์— ์ด๋ฏธ์ง€๋ฅผ ์˜ฌ๋ฆฌ์ง€ ์•Š๊ณ  ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์“ฐ์ง€์•Š๊ณ  ๋น ๋ฅด๊ฒŒhtml๊ณผ css๋กœ๋งŒ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ์ง€ ๊ณ ๋ฏผ์ค‘์ธ ์ƒํ™ฉ(์›๋ž˜ ๋ชจ๋“  ์˜์ƒ์„ ๋‚ด ์ž์ฒด ์„œ๋ฒ„์— ์˜ฌ๋ฆฌ๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ์šฉ๋Ÿ‰์ด ๋„ˆ๋ฌด ํฌ๊ณ (30๋ถ„์ด์ƒ์˜ ์˜์ƒ X 7), ์„œ๋ฒ„๊ฐ€ ๋‹ซํžˆ๋ฉด ์˜์ƒ์„ ๋ถˆ๋Ÿฌ์˜ฌ์ˆ˜์—†๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•˜๋Š” ๋“ฑ์˜ ์ด์œ ๋กœ ์‚ฌ์šฉ์„ ์ง€ํ–ฅํ•˜๋Š”ํŽธ)   | ๋ฐฉ๋ฒ• | ์ „์ฒด ์ฝ”๋“œ  ์œ„ ์ฒ˜๋Ÿผ ์ผ๋ฐ˜์ ์œผ๋กœ ์œ ํŠœ๋ธŒ ์˜์ƒ ๋ถˆ๋Ÿฌ์˜ค๋Š” iframe ์œ„์— ์ธ๋„ค์ผ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์•„๋ž˜์˜ํ•ด๊ฒฐ์ฝ”๋“œ (์ด๋ฏธ์ง€ ์ฃผ์†Œ)๋ฅผ ๋„ฃ๊ณ css๋กœ..

[JS] ํด๋ฆญ,ํ„ฐ์น˜ ์ด๋ฒคํŠธ ๋™์ž‘ ์•ˆ ํ• ๋•Œ : (e.preventDefault() ๋กœ ์ค‘๋ณต์ด๋ฒคํŠธ ๋ฐฉ์ง€

| ๋ฌธ์ œ์ƒํ™ฉclick์ด๋ฒคํŠธ๋ฅผ ์‚ฌ์šฉํ•œ ๋ฐ˜์‘ํ˜• ์›นํŽ˜์ด์ง€ ์ œ์ž‘์‹œ๋ฐ์Šคํฌํƒ‘์—์„œ๋Š” ์ •์ƒ์ž‘๋™ํ•˜์ง€๋งŒ ๊ฐค๋Ÿญ์‹œ ํฐ์—์„œ ํŠน์ •๋ฒ„ํŠผ์— ํ„ฐ์น˜์ด๋ฒคํŠธ๊ฐ€ ๊ฑธ๋ฆฌ์ง€ ์•Š์Œ= > click touchend ๋ฅผ ์คฌ๋”๋‹ˆ ๋Œ€๋ถ€๋ถ„ ๋™์ž๊ฐ›๋‚˜, ๋ช‡๊ฐœ์˜ ํ„ฐ์น˜ ์ด๋ฒคํŠธ ๋™์ž‘์ด ์•ˆ๋จ | ๋ฌธ์ œ์˜ ์ฝ”๋“œ $(document).ready(function () { $(".drag_box_inner_btn .box_playlist").on("click touchend ", function () { let img = $(this).find("img"); if (img.hasClass("widget_active_bgm")) { img.re..

[JS+HTML] html์•ˆ์— script๋กœ ๊ณตํ†ต์š”์†Œ (div)๊ฐ€์ ธ์˜ค๊ธฐ (+JS๋™์ž‘)

| ๋ชฉํ‘œ์•ˆ๊ฒฝ ๋‚€ ๊ณ ์–‘์ด ์™ธ์˜ ์š”์†Œ(ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ, ์‹œ๊ณ„, ์™ผ์ชฝ ์‚ฌ์ด๋“œ์˜ ๊ณ ์–‘์ด๋“ค ๋“ฑ) ๋“ค์€๊ฐ sub/ ์˜ html ์•ˆ์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ์“ฐ์ผ div์ด๋ฉฐ,js์˜ script ๋˜ํ•œ ๋™์ž‘ํ•ด์•ผํ•จ    | ๋ฐฉ๋ฒ•  1. ๊ณตํ†ต์œผ๋กœ ๋„ฃ์„ div๋ฅผ ๊ฐ€์ง„, html ํŒŒ์ผ์„ ๋งŒ๋“ฌ (common_widget.html)โš ๏ธ meta tag ๋นผ๊ณ  div ์•Œ๋งน์ด๋งŒ ๊ฐ€์ง€๋Š” ํŒŒ์ผ์ด ๋ผ์•ผํ•จ โš ๏ธ Insomnia's Room .... ๊ทธ ์™ธ div์š”์†Œ๋“ค 2. ๊ณตํ†ต์œผ๋กœ ๋„ฃ์–ด์งˆ html (common_widget.html) ํŒŒ์ผ์˜ css์™€ js๋ฅผ ๋งŒ๋“ฌ(common.css /sub_common.js)// ์•„๋ž˜๋Š” ์ดํ•ด๋ฅผ ๋•๊ธฐ์œ„ํ•œ, sub_comm..

[CSS] IOS (ํฌ๋กฌ,์‚ฌํŒŒ๋ฆฌ) ๋†’์ด ๊ฐ’ ๋ชป๊ฐ€์ง€๋Š” ๋ถ€๋ถ„ ํ•ด๊ฒฐ (line-height : 1 + flex๋กœ ์ •๋ ฌ)

| ๋ฌธ์ œ์ƒํ™ฉ์•ˆ๋“œ๋กœ์ด๋“œ ํฐ์ด๋‚˜ ์œˆ๋„์šฐ์—์„œ ์˜๋„๋Œ€๋กœ ์ž˜ ๋‚˜์˜ค๋˜ ๋†’์ด๊ฐ’์ด,์•„์ดํฐ์—์„œ (์‚ฌํŒŒ๋ฆฌ,ํฌ๋กฌ)๋ณด๋ฉด ์ž๊พธ ์—†์–ด์ง„ ์ƒํƒœ๋กœ ๋‚˜์˜ด ์˜จ๊ฐ– ๋ฐฉ๋ฒ•(flex๋งŒ ์ฃผ๊ธฐ, padding, margin, position์ฃผ๊ธฐ...) ์„ ๋‹ค ์จ๋ณธ ๊ฒฐ๊ณผflex + line-height๋ฅผ ์ฃผ๋ฉด ํ•ด๊ฒฐ๋œ๋‹ค๋Š”๊ฑธ ์•Œ๊ฒŒ ๋˜์–ด์„œ ๊ธฐ๋ก...player_info { position: absolute; top: 24%!important; left: 50%; transform: translateX(-50%); width: 80%; display: flex; flex-wrap: wrap; flex-direction: column; justify-content: flex-start; /* line-h..

[Jquery] draggable ๋ฌดํ•œ์œผ๋กœ ๋“œ๋ ˆ๊ทธ ๋  ๋•Œ ์˜์—ญ์ œํ•œํ•˜๋Š” ์ฝ”๋“œ

| ๋ฌธ์ œ์ƒํ™ฉ์ œ์ด์ฟผ๋ฆฌ ๊ธฐ๋ณธ draggable ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ™”๋ฉด๋‚ด์—์„œ ๋“œ๋ ˆ๊ทธ๋กœ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ด๋™์‹œํ‚ค๋Š” ํ™˜๊ฒฝ์—์„œ์˜ค๋ธŒ์ ํŠธ๋ฅผ html๋ฐ”๊นฅ์ชฝ์œผ๋กœ ์ด๋™ํ•˜๋ฉด ๊ทธ๋งŒํผ ๊ฐ€๋กœ์„ธ๋กœ์ถ•์ด ๋Š˜์–ด๋‚˜๋Š” ์ƒํ™ฉ..    $(document).ready(function () { // ๋“œ๋ž˜๊ทธ ๊ฐ€๋Šฅํ•œ ์š”์†Œ ์ƒ์„ฑ $(".draggable_clock, .draggable_bgm").draggable({ touchAction: "auto", // ํ„ฐ์น˜ ์ด๋ฒคํŠธ ํ™œ์„ฑํ™” grid: [10, 10], containment: 'main'// ๋“œ๋ ˆ๊ทธ ์˜์—ญ ์ œํ•œ }); ..

[JS] ๋™์ ์œผ๋กœ ๊ฒฝ๋กœ ์ถ”๊ฐ€ํ•˜๊ธฐ (window.location.pathname.includes('/sub/') ? '../' : ''; - ์‚ผํ•ญ์—ฐ์‚ฐ์ž ํ™œ์šฉ)

| ๋ฌธ์ œ์ƒํ™ฉindex.html๊ณผ sub/subpage.html ์€ ๊ฐ™์€ JS๋ฅผ ๊ณต์œ ํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ์ƒํ™ฉ.๊ฐ™์€ mp3ํŒŒ์ผ์„ JS๋ฅผ ํ†ตํ•ด ๊ฐ€์ ธ์™€์•ผ ํ•˜๋Š”๋ฐ,๊ฒฝ๋กœ๊ฐ€ ๋‹ฌ๋ผ์„œ JS๊ฐ€ sub/subpage.html ์—์„œ ๋™์ž‘ํ• ๊ฒฝ์šฐ'. ./ '๊ฐ€ ์ถ”๊ฐ€๋˜์–ด์•ผ ํ•จ $(document).ready(function () { const basePath = window.location.pathname.includes('/sub/') ? '../' : ''; const audioPaths = { Bgm1_Fireplace: basePath + 'bgm/DC_fire.mp3', Bgm2_Rain: basePath + 'bgm/DC_rain.mp3', Bgm3_MxRedKeyboard: ..

[CSS] IOS+Android (ํฌ๋กฌ,์‚ฌํŒŒ๋ฆฌ) ์ „์ฒด ํ„ฐ์น˜ ํ•˜์ด๋ผ์ดํŠธ ์ œ๊ฑฐ CSS ๋ชจ์Œ์ง‘

/* ๋ชจ๋“  ์š”์†Œ์— ๋Œ€ํ•ด ํ•˜์ด๋ผ์ดํŠธ ์ œ๊ฑฐ */* { -webkit-user-select: none!important; /* ํฌ๋กฌ, ์‚ฌํŒŒ๋ฆฌ, ์˜คํŽ˜๋ผ */ -moz-user-select: none!important; /* ํŒŒ์ด์–ดํญ์Šค */ -ms-user-select: none!important; /* ์ธํ„ฐ๋„ท ์ต์Šคํ”Œ๋กœ๋Ÿฌ/์—ฃ์ง€ */ -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* Safari */ -webkit-tap-highlight-color: transparent; /* ๋‹ค๋ฅธ ์›นํ‚ท ๊ธฐ๋ฐ˜ ๋ธŒ๋ผ์šฐ์ € */ user-select: none!important; /* ํ‘œ์ค€ */}    -webkit-tap-highlig..

๋ฐ˜์‘ํ˜•