Olá Rodrigo, tudo bem?
Seria muito interessante ter contato com o seu projeto na totalidade para entender melhor o cenário da sua aplicação e buscar alternativas mais assertivas para conseguir resolver o seu problema. Contudo, deixo abaixo algumas opções que podem ajudar a estilizar seu componente:
- Para posicionar a imagem à esquerda, você pode usar a propriedade
float: left;
no seu CSS. - Para arredondar a imagem, você pode usar a propriedade
border-radius:50%
. - Para mudar a cor ao passar o mouse, você pode usar o pseudo-seletor
:hover
no seu CSS. No entanto, mudar a cor de uma imagem é um pouco mais complexo do que mudar a cor de um texto, por exemplo. Uma maneira de fazer isso seria aplicar um filtro de cor na imagem ao passar o mouse.
Aqui está um exemplo de como seu código poderia ficar:
import menu from '../Imagens/menu.png'
import styled from 'styled-components'
const IconeMenu = styled.div`
max-width: 12.5rem;
max-height: 10rem;
width: auto;
height: auto;
float: left;
img {
border-radius: 50%;
transition: all 0.3s ease;
&:hover {
filter: brightness(50%);
}
}
`;
function Menu(){
return(
<IconeMenu>
<img src={menu} alt='menu'/>
</IconeMenu>
);
}
export default Menu
Nesse código, eu adicionei o float: left;
para alinhar a imagem à esquerda, e o border-radius: 50%;
para tornar a imagem arredondada. Também adicionei uma transição (transition: all 0.3s ease;
) para suavizar a mudança de cor, e um filtro de brilho (filter: brightness(50%);
) que será aplicado quando o mouse passar sobre a imagem, tornando-a mais escura. Você pode ajustar o valor de brightness()
para obter o efeito desejado.
Espero com essas dicas você consiga estilizar seus componentes. Todavia, é interessante fazer as alterações necessárias para que tudo funcione corretamente. Caso queira deixar compartilhar seu projeto, posso ajudar de forma mais assertiva a aplicar essas propriedades.
Abraços!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!