애니메이션이 끝난 후 요소의 너비가 변경되는 이유는 무엇입니까?

루 마타

저는 jQuery를 배우고 그 기능을 테스트하고 있으며 제가 만든 예제에 문제가 있습니다.

https://codepen.io/MaxVelichkin/pen/pBJeZy

/*remove animate2 class and assign animate1 class to target*/
$(function() {
  $('#trigger').on('click', function() {
    $('#target').removeClass('animate2');
    $('#target').addClass('animate1');
  });
});

/*remove animate1 class and assign animate2 class to target*/
$(function() {
  $('#trigger2').on('click', function() {
    $('#target').removeClass('animate1');
    $('#target').addClass('animate2');
  });
});
/*just a container around*/

#container {
  margin: 10px;
  width: 350px;
  height: 350px;
  border: solid green 1px;
}


/*green button*/

#trigger {
  width: 50px;
  height: 50px;
  border-radius: 100%;
  background-color: green;
  margin: 20px auto;
}


/*red button*/

#trigger2 {
  width: 50px;
  height: 50px;
  border-radius: 100%;
  background-color: red;
  margin: 20px auto;
}


/*Target div which will be changing*/

#target {
  width: 100px;
  height: 100px;
  border: solid blue 1px;
  margin: 10px auto;
}


/*Keyframes for green button*/

@keyframes myfirst {
  0% {
    background: white;
    width: 100px;
    height: 100px;
    border-radius: 0%;
  }
  100% {
    background: blue;
    width: 150px;
    border-radius: 100%;
  }
}


/*Keyframes for red button*/

@keyframes mysecond {
  0% {
    background: blue;
    width: 150px;
    border-radius: 100%;
  }
  100% {
    background: white;
    width: 100px;
    height: 100px;
    border-radius: 0%;
  }
}


/*cusstom class to be assigned by green button*/

.animate1 {
  -webkit-animation: myfirst 3s;
  animation: myfirst 3s;
  height: 100px;
  background: blue;
  width: 150px;
  border-radius: 100%;
  margin: 10px auto;
}


/*cusstom class to be assigned by red button*/

.animate2 {
  -webkit-animation: mysecond 3s;
  animation: mysecond 3s;
  height: 100px;
  width: 150px;
  border: solid red 1px;
  border-radius: 0%;
  margin: 10px auto;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="container">
  <div id="trigger"></div>
  <div id="trigger2"></div>
  <div id="target"></div>
</div>

다음이 있습니다.

  • 2 개의 버튼, 녹색 및 빨간색.
  • 키 프레임 2 세트.
  • 해당 키 프레임의 애니메이션을 시작하고 마지막 키 프레임의 스타일을 적용하는 2 개의 사용자 정의 클래스.
  • 타겟 div, 버튼 클릭시 변경하려는 스타일.

버튼을 클릭하면 대상 div에 클래스를 할당하고 다른 버튼에 의해 할당 된 클래스를 제거합니다.

질문 1 : 녹색 버튼 애니메이션이 끝난 후 대상 div의 너비가 100px로 다시 변경되는 이유는 무엇입니까 (150px로 유지되지 않는 이유)?

질문 2 : 모든 작업을 올바르게 수행합니까 아니면 더 나은 jQuery 접근 방식이 있습니까?

제니퍼 곤칼베스

귀하 #target는 ID 선택자이므로 우선 순위를 갖습니다. 너비는 100px. 수업 animate1을 덮어 쓰고 있으므로이 표시되지 않습니다 150px.

css 콘솔

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

애니메이션이 끝난 후 동위 원소를 완전히 제거 / 비활성화하는 방법은 무엇입니까?

분류에서Dev

CSS 애니메이션이 끝난 후 요소를 즉시 초기 위치로 되 돌리는 방법은 무엇입니까?

분류에서Dev

.push 이후 배열 요소가 변경되는 이유는 무엇입니까?

분류에서Dev

높이가 애니메이션 후 애니메이션 값인 구성 요소의 높이를 동적으로 설정하는 방법은 무엇입니까?

분류에서Dev

타이머가 끝난 후 코드가 한 번만 출력되는 이유는 무엇입니까?

분류에서Dev

연결 후 MAC 주소가 변경되는 이유는 무엇입니까?

분류에서Dev

Angular-데이터 변경 후 자식 구성 요소가 파괴되는 이유는 무엇입니까?

분류에서Dev

애니메이션 속성 추가 후 요소 위치 변경

분류에서Dev

UIKeyboardWillShowNotification을받은 후 프레임이 변경된 UIView가 자동으로 애니메이션되는 이유는 무엇입니까?

분류에서Dev

xaml에서 요소의 너비를 여러 번 애니메이션하는 방법은 무엇입니까?

분류에서Dev

JavaScript를 사용하여 CSS 애니메이션이 끝난 후 리디렉션하는 방법은 무엇입니까?

분류에서Dev

2 foreach 루프 후에 배열의 마지막 요소가 변경된 이유는 무엇입니까?

분류에서Dev

최소 / 최대 속성을 추가하면 Chrome에서 숫자 HTML5 입력 요소의 너비가 변경되는 이유는 무엇입니까?

분류에서Dev

Elixir의 MapSet이 32 개 요소 이후에 순서가 지정되지 않는 이유는 무엇입니까?

분류에서Dev

애니메이션이 끝난 후 활동 시작

분류에서Dev

날짜를 입력 한 후 Excel의 그래프가 변경되는 이유는 무엇입니까?

분류에서Dev

while (fgets) 문을 사용한 후 내 c 포인터 주소가 변경되는 이유는 무엇입니까?

분류에서Dev

동영상이 끝난 후 Powerpoint 슬라이드에 애니메이션을 추가 하시겠습니까?

분류에서Dev

for 루프의 목록이 변경된 후 for 루프가 첫 번째 요소를 건너 뛰는 이유는 무엇입니까?

분류에서Dev

너비가 100 % 여야하는 요소의 오른쪽에 요소가있는 이유는 무엇입니까?

분류에서Dev

다른 타이핑 애니메이션이 끝난 후 타이핑 애니메이션을 수행하는 방법

분류에서Dev

페이지 변경 후 디렉티브가 작동하지 않는 이유는 무엇입니까? 모난

분류에서Dev

Famo.us : 클릭 한 표면의 너비가 변경되지 않는 이유는 무엇입니까?

분류에서Dev

콘텐츠 변경 후 JQuery 애니메이션 요소 높이

분류에서Dev

하나가 끝난 후 두 번째 .mp4 비디오를 재생하는 방법은 무엇입니까?

분류에서Dev

메서드의 ID가 변경되는 이유는 무엇입니까?

분류에서Dev

32 비트 부호있는 정수 최대 값이 C #에서 1 씩 증가한 후 최소값으로 변경되는 이유는 무엇입니까?

분류에서Dev

JavaScript "style.display = 'block'이 내 요소의 너비를 변경하는 이유는 무엇입니까?

분류에서Dev

특수 문자가 Gedit 또는 medit에서 후행 / 선행 공백 문자의 너비를 변경하는 이유는 무엇입니까?

Related 관련 기사

  1. 1

    애니메이션이 끝난 후 동위 원소를 완전히 제거 / 비활성화하는 방법은 무엇입니까?

  2. 2

    CSS 애니메이션이 끝난 후 요소를 즉시 초기 위치로 되 돌리는 방법은 무엇입니까?

  3. 3

    .push 이후 배열 요소가 변경되는 이유는 무엇입니까?

  4. 4

    높이가 애니메이션 후 애니메이션 값인 구성 요소의 높이를 동적으로 설정하는 방법은 무엇입니까?

  5. 5

    타이머가 끝난 후 코드가 한 번만 출력되는 이유는 무엇입니까?

  6. 6

    연결 후 MAC 주소가 변경되는 이유는 무엇입니까?

  7. 7

    Angular-데이터 변경 후 자식 구성 요소가 파괴되는 이유는 무엇입니까?

  8. 8

    애니메이션 속성 추가 후 요소 위치 변경

  9. 9

    UIKeyboardWillShowNotification을받은 후 프레임이 변경된 UIView가 자동으로 애니메이션되는 이유는 무엇입니까?

  10. 10

    xaml에서 요소의 너비를 여러 번 애니메이션하는 방법은 무엇입니까?

  11. 11

    JavaScript를 사용하여 CSS 애니메이션이 끝난 후 리디렉션하는 방법은 무엇입니까?

  12. 12

    2 foreach 루프 후에 배열의 마지막 요소가 변경된 이유는 무엇입니까?

  13. 13

    최소 / 최대 속성을 추가하면 Chrome에서 숫자 HTML5 입력 요소의 너비가 변경되는 이유는 무엇입니까?

  14. 14

    Elixir의 MapSet이 32 개 요소 이후에 순서가 지정되지 않는 이유는 무엇입니까?

  15. 15

    애니메이션이 끝난 후 활동 시작

  16. 16

    날짜를 입력 한 후 Excel의 그래프가 변경되는 이유는 무엇입니까?

  17. 17

    while (fgets) 문을 사용한 후 내 c 포인터 주소가 변경되는 이유는 무엇입니까?

  18. 18

    동영상이 끝난 후 Powerpoint 슬라이드에 애니메이션을 추가 하시겠습니까?

  19. 19

    for 루프의 목록이 변경된 후 for 루프가 첫 번째 요소를 건너 뛰는 이유는 무엇입니까?

  20. 20

    너비가 100 % 여야하는 요소의 오른쪽에 요소가있는 이유는 무엇입니까?

  21. 21

    다른 타이핑 애니메이션이 끝난 후 타이핑 애니메이션을 수행하는 방법

  22. 22

    페이지 변경 후 디렉티브가 작동하지 않는 이유는 무엇입니까? 모난

  23. 23

    Famo.us : 클릭 한 표면의 너비가 변경되지 않는 이유는 무엇입니까?

  24. 24

    콘텐츠 변경 후 JQuery 애니메이션 요소 높이

  25. 25

    하나가 끝난 후 두 번째 .mp4 비디오를 재생하는 방법은 무엇입니까?

  26. 26

    메서드의 ID가 변경되는 이유는 무엇입니까?

  27. 27

    32 비트 부호있는 정수 최대 값이 C #에서 1 씩 증가한 후 최소값으로 변경되는 이유는 무엇입니까?

  28. 28

    JavaScript "style.display = 'block'이 내 요소의 너비를 변경하는 이유는 무엇입니까?

  29. 29

    특수 문자가 Gedit 또는 medit에서 후행 / 선행 공백 문자의 너비를 변경하는 이유는 무엇입니까?

뜨겁다태그

보관