2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								id: 587d78a7367417b2b2512ae0
							 
						 
					
						
							
								
									
										
										
										
											2021-07-21 20:53:20 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								title: Usar animações CSS para alterar o estado de foco de um botão
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								challengeType: 0
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								videoUrl: 'https://scrimba.com/c/cg4vZAa'
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								forumTopicId: 301073
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								dashedName: use-css-animation-to-change-the-hover-state-of-a-button
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --description--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-07-05 20:01:44 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Você pode usar a regra CSS `@keyframes`  para alterar a cor de um botão em seu estado de foco.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-07-05 20:01:44 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Aqui está um exemplo de alteração da largura de uma imagem ao passar o cursor do mouse por cima:
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```html
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< style >  
						 
					
						
							
								
									
										
										
										
											2021-09-23 08:38:58 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  img {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    width: 30px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								  img:hover {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    animation-name: width;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    animation-duration: 500ms;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  @keyframes  width {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    100% {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      width: 40px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< / style >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-09-22 08:34:59 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< img  src = "https://cdn.freecodecamp.org/curriculum/applied-visual-design/google-logo.png"  alt = "Google's Logo"  / >  
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --instructions--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-07-05 20:01:44 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Observe que `ms`  representa milissegundos, onde 1000ms é igual a 1s.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-07-05 20:01:44 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Use a regra CSS `@keyframes`  para alterar a propriedade `background-color`  do elemento `button`  para que se torne `#4791d0`  quando um usuário passar o cursor do mouse sobre ele. A regra `@keyframes`  deve ter apenas um frame de `100%` .
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --hints--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-07-05 20:01:44 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								A regra @keyframes  deve usar como nome o valor da propriedade `animation-name` , que é background-color.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								assert(code.match(/@keyframes \s+?background-color\s*?{/g));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2021-07-05 20:01:44 +05:30 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Deve haver uma regra no `@keyframes`  que altera a propriedade `background-color`  para `#4791d0`  quando a animação estiver em 100%.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-15 16:21:20 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```js
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								assert(code.match(/100%\s*?{\s*?background-color:\s*?#4791d0 ;\s*?}/gi));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --seed--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## --seed-contents--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```html
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< style >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  button {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    border-radius: 5px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    color: white;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    background-color: #0F5897 ;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    padding: 5px 10px 8px 10px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  button:hover {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    animation-name: background-color;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    animation-duration: 500ms;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< / style >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< button > Register< / button >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# --solutions--
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```html
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< style >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  button {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    border-radius: 5px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    color: white;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    background-color: #0F5897 ;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    padding: 5px 10px 8px 10px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  button:hover {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    animation-name: background-color;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    animation-duration: 500ms;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  @keyframes  background-color {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    100% {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      background-color: #4791d0 ;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< / style >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< button > Register< / button >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```