Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Não consigo exibir duas DIVs na mesma linha

Olá, não estou conseguindo colocar a div e o select na mesma linha cada um ocupando 50% da largura

<div class="grupo-radio">
                <div class="radio">
                    <label>
                        <input id="pessoa-fisica" type="radio" name="tipo-pessoa"  value="Pessoa Física">
                        Pessoa Física
                    </label>
                </div>
                <div class="radio">
                    <label>
                        <input id="pessoa-juridica" type="radio" name="tipo-pessoa"  value="Pessoa Jurídica">
                        Pessoa Jurídica
                    </label>
                </div>
            </div><!--
             bug html 
            --><select class="contato-select form-control">
                <option disabled selected>Área do direito:</option>
                <option>Tributário</option>
                <option>Trabalhista</option>
                <option>Empresarial</option>
                <option>Societário</option>
                <option>Outro</option>
                <option>Não sei</option>
            </select>

css

.contato-select, 
.grupo-radio {
    width: 50%;
    display: inline-block;
    vertical-align: top;
}

.grupo radio .radio:first-child {
    margin-top: 0;
}

Quando inspeciono o componente select, as estilizações estão riscados

5 respostas
solução!

Oi Bruno, tudo bem? O que acho que está acontecendo é que a classe form-control tem uma largura de 100% e a sua regra de 50% não tem relevância suficiente para sobrescrever esse comportamento. Eu não gosto muito de sobrescrita, por isso eu faria algo como:

<div class="col-lg-6">
     <!-- radios buttons aqui -->
</div>

<div class="col-lg-6">
     <!-- select aqui aqui -->
</div>

Ai dessa forma, você nem precisaria definir esses 50%, o bootstrap já faria isso pra você. Entendeu?

Muito obrigado pelo retorno Wanderson, fiz assim:

segue link da tela: http://ap.imagensbrasil.org/image/EMXG63

<div class="row">
                <div class="col-xs-6">
                    <div class="radio">
                        <label>
                            <input id="pessoa-fisica" type="radio" name="tipo-pessoa"  value="Pessoa Física">
                            Pessoa Física
                        </label>
                    </div>
                    <div class="radio">
                        <label>
                            <input id="pessoa-juridica" type="radio" name="tipo-pessoa"  value="Pessoa Jurídica">
                            Pessoa Jurídica
                        </label>
                    </div>
            </div><!--
             bug html 
            -->

            <div class="col-xs-6">
                <select class="contato-select form-control">
                    <option disabled selected>Área do direito:</option>
                    <option>Tributário</option>
                    <option>Trabalhista</option>
                    <option>Empresarial</option>
                    <option>Societário</option>
                    <option>Outro</option>
                    <option>Não sei</option>
                </select>
            </div>
        </div>

só que ficou desalinhado, viu na imagem? como poderia alinhar?

Bruno, acho que no mobile a melhor ideia é deixar um abaixo do outro, com o col-xs-12 mesmo, a usabilidade e visibilidade dos elementos fica melhor, entendeu? E você provavelmente não vai precisar alinha nada.

Na verdade o que acontece é que ao colocar o espaço entre eles, você deixa ter 100% da largura útil, sendo assim quando direciona o valor de 50% para cada elemento, você não tem este espaço sendo que o segundo elemento é direcionado para a parte de baixo. Basta colocar 49% ao invés de 50% que irá resolver o seu problema.

.grupo-radio,
.contato-select {
    width: 49%;
    display: inline-block;
    vertical-align: middle;
}

Obrigado Cleiton, vou testar também