Vue
[Vue] #11 - UI ์ ๋๋ฉ์ด์
ruby_s
2021. 8. 6. 11:19
728x90
๋ฐ์ํ
SMALL
1. :class=""
CSS๋ก ์ ๋๋ฉ์ด์ ์ฃผ๊ธฐ - ๋ชจ๋ฌ์ฐฝ์ด ์์ํ ์ด๋ฆฌ๋ ์ ๋๋ฉ์ด์
<div class="start" :class="{ end : ๋ชจ๋ฌ์ฐฝ์ด๋ ธ๋ }"> <style> .start{ opacity: 0; transition: all 1s; } .end{ opacity: 1; } </style>'๋ชจ๋ฌ์ฐฝ์ด๋ ธ๋'๊ฐ true๊ฐ ๋ ๋๋ง endํด๋์ค๊ฐ ์ ์ฉ์ด ๋๋ค๋ ๋ป
transition: all 1s ๋ ํด๋์ค์ ๋ชจ๋ ์์์ ๋ณํ๊ฐ ์๊ธธ ๋ 1์ด๊ฐ ๊ฑธ๋ฆฐ๋ค๋ ๋ป
2. - Vue์ ๊ณต ํ๊ทธ ์ฌ์ฉ
<transition> ์ ๋๋ฉ์ด์ ์ฃผ๊ณ ์ถ์ ์์๋ฅผ ๊ฐ์ผ๋ค </transition>
3. ์ฐฝ ์ด๋ฆด ๋
enter-from, enter-active, enter-to : < transition > ์ class ์์ฑ
<transition name="fade">
- name์ง์
.fade-enter-from{ opacity: 0; // ์์ ์ ์คํ์ผ } .fade-enter-active{ transition: all 1s; // ๋์ํ ์ ๋๋ฉ์ด์ } .fade-enter-to{ opacity: 1; // ๋๋ ์ ์คํ์ผ }
- css์ 3๊ฐ์ ํด๋์ค ์ ์ธ
4. ์ฐฝ ๋ซํ ๋
leave-from, leave-active, leave-to
- .fade-leave-from{ opacity: 1; // ์ฌ๋ผ์ง๊ธฐ ์์ํ ๋ } .fade-leave-active{ transition: all 1s; } .fade-leave-to{ opacity: 0; // ์ฌ๋ผ์ง๊ธฐ ๋๋ ๋ }
- .fade-enter-from{ /* opacity: 0; */ transform: translateY(-1000px); // ์์์ ๋ถํฐ 1000ํฝ์ ๋ด๋ ค์ด } /* */ .fade-enter-active{ transition: all 1s; } /* ๋๋ ์ ์คํ์ผ */ .fade-enter-to{ /* opacity: 1; */ transform: translateY(0px); // ์๋ ์๋ฆฌ๋ก ๋์์ด }
728x90
๋ฐ์ํ
LIST