Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ai로 앱 만들기
- 구로 디지털 단지 사무실
- typescript
- XFrameOptions
- select tag
- multiprocessing
- 좋은 리더란
- 동료리뷰
- 스타트업
- 느린 서버
- JS
- turborepo
- Domination Game
- 테드스페이스
- 개발자
- html
- 공유 오피스
- 구로 공유 오피스
- 2인 사무실
- 리더
- javascript
- Regexp
- css
- python
- PM
- React
- select css
- 빠른 서버
- iframe
- Django
Archives
- Today
- Total
개발하는 일상
css perspective가 이상하게 동작할 때 본문
문제 상황
perspective
속성을 사용하다보면 의도와 다르게 이상하게 동작할 때가 있습니다. 저는 문을 만들면서 이 상황을 겪게 되었는데요. 아래의 네모박스에 마우스를 가져가면 마치 문이 열리는 듯한 동작을 하도록 만들었습니다.
처음 동작은 부드럽게 되는 듯 하나, 마우스를 빠르게 왔다갔다 해보시면 perspective
가 매우 작게 설정된(매우 가까이 에서 문이 열린) 것 같은 효과가 발생합니다.
원인과 해결 방법
이 문제는 원치않게 perspective
가 변할 때 발생하는데요. 보통 perspective
의 초기값을 설정하지 않았을 때 이런 문제가 발생하니 이벤트가 발생하지 않았을 때 초기값을 잘 지정해주면 됩니다.
저의 경우는 door-front
에서 opend
클래스가 추가 되었을 때 transform
으로 perspective
를 지정하고 있으니, open
클래스가 없을 때도 동일한 perspective
를 유지하도록 css를 추가해주면 됩니다. 완성된 코드는 아래와 같이 문제 없이 동작합니다.
변경된 코드 부분
/* 변경 전 */
.door-front{
position: absolute;
width:100%;
height:100%;
background-color: rgb(201, 31, 124);
transform-origin: left;
transition: transform .5s;
z-index: 2;
}
/* 변경 후 */
.door-front{
position: absolute;
width:100%;
height:100%;
background-color: rgb(201, 31, 124);
transform-origin: left;
transition: transform .5s;
z-index: 2;
transform: perspective(1000px); /* 변경된 부분! */
}
'개발 간단 팁' 카테고리의 다른 글
이벤트리스너 한 번만 발동하게 하기(Remove Event Listener Function Itself) (0) | 2021.01.11 |
---|---|
구글 폼 제출 자동화하기(Automate to Submit Google Form) (6) | 2020.12.31 |
border-radius 파헤치기(css로 원기둥 만들기) (0) | 2020.11.24 |
상태 관리에서 Vue와 React의 차이점과 불변성(Difference of state management between Vue and React) (0) | 2020.11.22 |
프론트 프레임워크를 왜 쓸까? (React, Vue 쓰는 이유) (2) | 2020.11.16 |
Comments