inline μμ μμ§ μ λ ¬ / λΉμ¨ μ μ§νλ λ°μν μ΄λ―Έμ§ λ§λ€κΈ°
HTML / CSS / JavaScript λ³΅μ΅ (TIL)
νλ‘κ·Έλλ¨Έμ€ μκ³ λ¦¬μ¦ λ¬Έμ νμ΄
μ€λμ 볡μ΅μ νλ©΄μ λ€μ λ΄€μ λ ν·κ°λ Έλ λΆλΆκ³Ό λΉμμ μ§λ¬ΈμΌλ‘ μ μ΄λ¨λ λΆλΆλ€μ ν΄κ²°ν΄μ μ 리ν΄λ³΄λ μκ°μ κ°μ‘λ€. κ·Έ μ€μμ λ°λ‘ λΉΌμμΌκ² λ€ μΆμ λ λΆλΆλ§ κ°μ Έμλ€.
ν
μ€νΈμ μλ, μ μ¬λ°±μ line-height
λ‘ μ§μ ν μ μλ€.
vertical-align
β inline-block λ±μ ν¬ν¨ν λͺ¨λ inline μμμ μμ§ μ λ ¬μ μν΄ μ¬μ©λ¨
vertical-align: middle;
β ν΄λΉ μμμ μΈλΌμΈ λ°μ€μ μμ§ μ€μ μ§μ μ, κ·Έ λΆλͺ¨ μμμ μ€μ μ§μ μ μ λ ¬
[TIL] 210901 δΈ λ°μν web λΆλΆ μ§λ¬Έ ν΄κ²°
μμ μμμ % ν¨λ©(% padding) κ°μ λΆλͺ¨ μμμ λλΉ κ°μ κΈ°μ€μΌλ‘ μ ν΄μ§λ€,
CSS λ°±κ·ΈλΌμ΄λ μ΄λ―Έμ§ λ° μλ¦¬λ¨ΌνΈ λΉμ¨λ‘ μ‘°μ νκΈ° μ°Έκ³
μνμ’μ° paddingκ³Ό margin λͺ¨λ width κ°μ μν₯μ λ°λλ€. (height κ° X)
μμ μμμ padding κ°μΌλ‘ %λ₯Ό μ¬μ©
ν κ²½μ°, %μ κΈ°μ€ ν¬κΈ°λ λΆλͺ¨ μμμ width κ°
μ΄ λλ€.
HTML
<div class="box1"> <div class="box2"> <img> </div> </div>
CSS
.box1 { width: 400px; /* π‘ μμ μμμ % paddingμ μ¬μ©νκΈ° μν΄ μ μ΄μ€ */ } .box2 { /* π‘ % paddingμ κ·Έ λΆλͺ¨ μμμ width κ°μ κΈ°μ€μΌλ‘ ν¨ */ padding-top: 100%; /* ν΄λΉ μμ μμ μμ μ€ μμ Έλμ¨ λΆλΆμ΄ μ 보μ΄κ² ν¨ */ overflow: hidden; /* imgμ absolute μ μ©νκΈ° μν΄ κ·Έ λΆλͺ¨ μμμ μ μ΄μ€ κ² */ position: relative; /* divλ₯Ό μνμΌλ‘ λ§λ€μ΄ μ€ */ border-radius: 50%; } img { /* π‘ μμ imgκ° box2 μμ κ½ μ°¨λλ‘ */ height: 100%; /* imgκ° box2 μμ μ€μ μ λ ¬μν΄ */ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
- box1μ λλΉμ λμ΄ λͺ¨λ 400pxμ΄κ³ , box2μλ λλΉλ λμ΄κ° μ§μ λμ΄ μμ§ μμ λμ padding-top κ°μ΄ 100%λ‘ μ§μ λμ΄ μλ€. μ΄λ
μμ μμμ % padding
μκ·Έ λΆλͺ¨ μμμ width κ°
μ κΈ°μ€μΌλ‘ νλ―λ‘ box2μ padding-top κ°μ 400pxμ΄ λλ€.
- νμΈμ μν΄ κ°λ°μ λκ΅¬λ‘ box1 λΆλΆμ ν΄λ¦νλ©΄ box2 λΆλΆμ΄ μ νλλ©΄μ padding-top κ°λ§ 400pxμ΄λΌκ³ λμ¨λ€. μ¦, box1 λΆλΆμ΄ box1 μμ μλ box2μ padding-top κ°μΌλ‘ λͺ¨λ μ±μμ§ κ²μ΄λ€. μ΄λ box2 μμ imgλ₯Ό λ£μΌλ©΄, κ·Έ 400pxμ΄λΌλ μ ν¨λ© κ° λ°μ imgκ° μ€κ² λκ³ , box2μ λμ΄λ κΈ°μ‘΄μ box2μ padding-top κ°μ imgμ λμ΄λ₯Ό μΆκ°ν λ§νΌ λμ΄λκ² λλ€.
- κ·Έ ν absoluteλ₯Ό μ΄μ©ν΄ imgλ₯Ό boxμ μ μ€μμ μ€λλ‘ μ λ ¬μν¨ ν(λμ΄λ¬λ box2μ λμ΄κ° λ€μ 400pxμ΄ λλ€) μμ imgκ° box2μ λμ΄λ§νΌ κ½ μ±μμ§λλ‘ height κ°μ 100%λ‘ μ€μ ν΄μ£Όλ©΄ imgκ° box2 μμ κ½ λ€μ΄μ°¨κ² λλ€.
- β μ΄λ λΈλΌμ°μ ν¬κΈ°κ° λ³ν¨μ λ°λΌ λ°μνμΌλ‘
imgλ λΉμ¨μ μ μ§νλ©° κ·Έ ν¬κΈ°κ° λ³νλλ‘ νλ €λ©΄
box1μ width κ°μ % κ°μΌλ‘ μ€μ ν΄μΌ νλ€.
κ·Έ ν λ무 κ³Όλνκ² μ΄λ―Έμ§κ° 컀μ§λ κ²μ λ°©μ§νκ³ μΆλ€λ©΄ max-widthλ₯Ό μ€μ ν μ μλ€.
- β padding κ°μ λ³κ²½ν΄ λ€μν λΉμ¨λ‘ λ°μν μ΄λ―Έμ§λ₯Ό λ§λ€ μ μλ€.
/* 1:1 λΉμ¨ */ padding-top: calc(100% / 1 * 1); /* 16:9 λΉμ¨ */ padding-top: calc(100% / 16 * 9); /* 4:3 λΉμ¨ */ padding-top: calc(100% / 4 * 3);
- μ΄λ λ°°κ²½ μ΄λ―Έμ§λ₯Ό λ°μνμΌλ‘ λ§λ€κ³ μΆμ λλ μμ© κ°λ₯νλ€.
μ²μ λ΅λ³
λλͺ μ΄μΈ(λ°°μ΄ μμ μ€λ³΅)μ κ³ λ € λͺ»ν¨
function solution(participant, completion) {
for (let i = 0; i < completion.length; i++) {
for (let j = 0; j < participant.length; j++) {
if (completion[i] === participant[j]) {
participant.splice(j, 1);
}
}
}
var answer = participant.toString();
return answer;
}
function solution(participant, completion) {
for (let i = 0; i < completion.length; i++) {
var index = participant.indexOf(completion[i]);
participant.splice(index, 1);
}
var answer = participant.toString();
return answer;
}
νΈλ 건 κΈλ°© νμλλ° μ λ²μ μμ§ ν¨μ¨μ± ν
μ€νΈλ κ³ λ €νμ§ λ§λΌκ³ ν΄μ μ΄λ²μλ μ νλλ§ ν΅κ³Ό
λ ν λλΈ κ±°λΌ ν¨μ¨μ±μ 0μ μ΄λ€. μ€ν κ²°κ³Όμ μκ° μ΄κ³ΌλΌκ³ λ¨λ κ±° 보면 μκ° κ΄λ ¨λ λ¬Έμ μΈ κ±° κ°μλ° μκ³ λ¦¬μ¦ κ°μλ νλ² λ€μ΄λ΄μΌ νλ. μλλ©΄ κ³μν΄μ λ°°μ΄ κ±Έ ν λλ‘ μ νλλ§ κ³ λ €ν΄μ νμ΄λ λλ κ±ΈκΉ.
λ λ€λ₯Έ νλ¬ λμ νλ‘κ·Έλλ¨Έμ€ μκ³ λ¦¬μ¦ λ¬Έμ λ§ κ³μ νΈλ κ²λ μκ°μ΄ μκΉμ΄ κ±° κ°μμ μ λ²μ λ€μ΄λ³΄λ €λ€ λ―Έλ€λ λλ¦Όμ½λ© κ°μλ λ΄μΌλΆν° ν¨κ» λ€μ΄λ³ΌκΉ νλ€. μ΄λ―Έ μ¬μ νμ΅μ ν΅ν΄ λ°°μ΄ λ΄μ©λ€μ΄ 컀리νλΌμ λ§μ΄ ν¬ν¨λμ΄ μλ κ°μ κ°μλ° μ΄λ¨μ§ λͺ¨λ₯΄κ² λ€. μ§λκ° ν ν λκ° μ μμμΌλ©΄ μ’κ² λ€. λ―Έλ νλ‘μ νΈλ€λ ν¨κ» λ§λλ κ°μλΌ μ¬λ°μ κ±° κ°λ€.
μλ°μ€ν¬λ¦½νΈ 볡μ΅
μλ‘μ΄ κ°μ μκ° μμ
νλ‘κ·Έλλ¨Έμ€ μκ³ λ¦¬μ¦ λ¬Έμ νμ΄