[전단 스타일] css/js 상용 애니메이션 (一) 이동 애니메이션 효과(위조+transition+transform+animation)
13284 단어 css
transform( )
- 속성을 조합하여 한 개/여러 개의 속성 값만 설정하고 빈칸을 구분할 수 있습니다.속성 정의 요소 /
: 다섯 개의 하위 속성을 정의할 수 있습니다.translate( )
-transform의 속성 값으로 원소를 정의하는
transition( )
-정의
는 약자 속성으로 네 개의 하위 속성을 정의할 수 있습니다.animation( )
animation 정의 keyframe
, 속성은 여섯 개의 애니메이션 하위 속성을 설정하는 데 사용되는 약자 속성입니다. (Pseudo-classes)
서로 다른 상태의 원소에 대응하는 양식을 추가하고 짝퉁(:)
으로 위류를 표시한다.
문서 트리에 없는 요소를 만들고 스타일을 추가하는 데 사용합니다.짝퉁(::)
/(:)
로 위조원소 표시1.transition+:hover 위조 이미지 부상 이동 애니메이션 구현
/* */
.floatBox {
width: 300px;
background-color: rgb(221, 143, 143);
/* x=0 */
transform: translateX(0);
/* 0.4s */
transition: transform 0.4s;
}
/* hover */
.floatBox:hover {
/* x=-10px 10px */
transform: translateX(-10px);
/* 0.4s transform */
transition: transform 0.4s;
}
효과 표시: height ='500'width ='900'scrolling ='no'title ='transition+hover 모바일 애니메이션 구현'src='//codepen.io/juwuyu/embed/MRezYe/?height=510 & theme-id=36604 &default-tab=css,result'allowfullscreen ='true'>'true'> See the Pen the Pen transition+hover 모바일 애니메이션 구현juwuwu @yuw Penuw @ Penuw
2. 마우스를 화면으로 옮겨 위로 이동
아이디어:
margin-top: -28px;
이 위치 이동을 실현하고img와 중첩 ,line-height,margin-top
세 항목을 채우고 전체 중첩 + 텍스트 중심 효과 실현transition: 0.4s;
/* 2. */
.img-wrapper {
width: 300px;
}
.img-wrapper .img {
height: 138px;
background-color: rgb(221, 143, 143);
}
.img-wrapper .title {
/* margin-top , */
margin-top: -28px;
text-align: center;
height: 28px;
line-height: 28px;
background-color: rgba(222, 134, 57, 0.8);
/* */
transition: 0.4s;
}
.img-wrapper:hover .title {
/* margin-top - , */
margin-top: -138px;
text-align: center;
/* height+linehright */
height: 138px;
line-height: 138px;
background-color: rgba(222, 134, 57, 0.8);
/* */
transition: 0.4s;
}
효과 표시: height = 500 width = 900 scrolling = "no"title = "XQKyyE"src = "//codepen.io/juwuyu/embed/XQKyE/? height=434 & theme-id=36604 &default-tab=css, result"allowfullscreen = "true"> See the Pen XQKyy E by juwuwyu(@juwyuon) CoudePen.
참조:https://blog.csdn.net/u012767607/article/details/80481933
3. 원소 변형
1. requestAnimationFrame 진행 표시줄 생성
아이디어:
requestAnimationFrame
브라우저가 다음 리셋을 하기 전에 지정한 리셋 함수를 호출하여 애니메이션을 업데이트합니다. 리셋 호출은 유창한 애니메이션을 실현할 수 있습니다timer
타이머 표지 저장, 타이머 제거에 사용500px
requestAnimationFrame
cancelAnimationFrame(timer)
var timer;// id
var btn = document.getElementById('btn')
btn.onclick = function() {
myDiv.style.width = "0";
cancelAnimationFrame(timer);//
timer = requestAnimationFrame(function fn() {
if (parseInt(myDiv.style.width) < 500) {// 500,
myDiv.style.width = parseInt(myDiv.style.width) + 5 + "px";
myDiv.innerHTML = parseInt(myDiv.style.width) / 5 + "%";
timer = requestAnimationFrame(fn);//
} else {
cancelAnimationFrame(timer);// 500,
}
});
};
효과 표시: height="500"width="900"scrolling="no"title="animation-frame 생성 진행률 게이지"src="//codepen.io/juwuyu/embed/pBldao/?height=300&theme-id=36604 &default-tab=js,result"allowfullscreen="true"true"> See the Penanimation-frame 생성 진행률 게이지 by juwuwuuuyu(@Penyuw)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
장치 너비가 특정 너비보다 크고 특정 너비보다 작을 때 웹 페이지 CSS 스타일을 변경하는 방법은 무엇입니까?장치 너비가 특정 너비보다 크고 특정 너비보다 작을 때 웹 페이지 CSS 스타일을 변경하려면 @media의 미디어 쿼리 구문을 사용한 다음 구문을 작성하여 스타일의 최소 너비를 정의해야 합니다. 적용된 후 and라는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.