1
resposta

[Dúvida] Design da lista não obedece

A lista "Time" não segue o padrão dos demais inputs.imagem dos inputs

Index do formulário:

import CampoTexto from '../CampoTexto'
import ListaSuspensa from '../ListaSuspensa'
import './Formulario.css'

const Formulario = () => {

    const times = [
        'Programação',
        'Front-End',
        'Data Science',
        'Devops',
        'UX e Design',
        'Mobile',
        'Inovação e Gestão'
    ]

    return (
        <section className="formulario">
            <form>
                <h2>Preencha os dados para criar o card do colaborador</h2>
                <CampoTexto label="Nome" placeholder="Digite seu nome" />
                <CampoTexto label="Cargo" placeholder="Digite seu cargo" />
                <CampoTexto label="Imagem" placeholder="Digite o endereço da imagem" />
                <ListaSuspensa label="Time" itens={times} />
            </form>
        </section>
    )
}

export default Formulario

Index da lista supensa:

import './ListaSuspensa.css'

const ListaSuspensa = (props) => {
    // console.log(props.itens)

    return (
        <div className='lista-suspensa'>
            <label>{props.label}</label>
            <select>
                {props.itens.map(item => {
                    return <option key={item}>{item}</option>
                })}
            </select>
        </div>
    )
}

export default ListaSuspensa

CSS lista suspensa:

.lista-suspensa label {
    display: block;
    margin-bottom: 8px;
    font-size: 24px;
}

.lista-suspensa select {
    background-color: #FFF;
    box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.06);
    width: 100%;
    border: none;
    font-size: 24px;
    padding: 24px;
    box-sizing: border-box;
    border-radius: 5px;
}

Edit: o botão também seguiu o comportamento do select.

1 resposta

Olá Octávio,

Pelo que entendi, o seu problema é que a lista suspensa "Time" não está seguindo o mesmo padrão dos demais inputs do formulário. Analisando o código que você postou, percebi que o problema está no CSS da lista suspensa.

No CSS da lista suspensa, você está definindo um estilo específico para o select, mas não está aplicando esse mesmo estilo para os demais inputs. Para resolver o problema, basta aplicar o mesmo estilo para todos os inputs do formulário.

Por exemplo, você pode adicionar a seguinte classe no CSS do formulário:

.formulario input,
.formulario select {
    background-color: #FFF;
    box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.06);
    width: 100%;
    border: none;
    font-size: 24px;
    padding: 24px;
    box-sizing: border-box;
    border-radius: 5px;
}

Dessa forma, todos os inputs do formulário terão o mesmo estilo, incluindo a lista suspensa "Time".

Espero ter ajudado e bons estudos!