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

Jquery - radio button na mesma linha

Gostaria que as opções do radio button ficassem lado a lado, não uma embaixo da outra. Já tentei diversas coisas e não consegui.

Meu HTML:

            <div class="row">
                <div class="col-md-3">
                    <span>No Site</span>  
                    <label class="containerckd">One
                      <input type="radio" checked="checked" name="radio">
                      <span class="checkmark"></span>
                    </label>
                    <label class="containerckd">Two
                      <input type="radio" name="radio">
                      <span class="checkmark"></span>
                    </label>
                    <label class="containerckd">Three
                      <input type="radio" name="radio">
                      <span class="checkmark"></span>
                    </label>                   
                </div>
            </div>

Meu CSS:

<style>
/* The container */
.containerckd {
    position: relative;
    padding-left: 25px;
    cursor: pointer;
}

/* Hide the browser's default radio button */
.containerckd input {
    position: absolute;
    opacity: 0;
}

/* Create a custom radio button */
.checkmark {
    position: absolute;
    top: 5px;
    left: 0;
    height: 15px;
    width: 15px;
    background-color: #eee;
    border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.containerckd:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.containerckd input:checked ~ .checkmark {
    background-color: #004B8A;
}
</style>
2 respostas

Olá, Gustavo.

Essa parte de posicionar as coisas na tela é a parte mais complicada para o desenvolvedor front-end. É tão comum essa dúvida quando estamos começando nossos estudos que a comunidade CollabCode tem uns posts bem interessante sobre como usar as propriedades de alinhamento do CSS:

https://medium.com/collabcode/pare-de-chutar-e-aprenda-as-propriedades-css-de-posicionamento-603154655121

Dá uma lida no post sobre display:inline e display: inline-block.

Mas de verdade recomendo que você leia todos os posts que já estão disponível no primeiro link que passei aqui. Realmente é um conteúdo que precisamos saber para desenvolver sites :-)

solução!

Obrigado pela dica. Resolvi o problema utilizando bootstrap.

Segue abaixo o exemplo:

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<div class="container">
  <h2>Form control: inline radio buttons</h2>
  <p>The form below contains three inline radio buttons:</p>
  <form>
    <label class="radio-inline">
      <input type="radio" name="optradio">Option 1
    </label>
    <label class="radio-inline">
      <input type="radio" name="optradio">Option 2
    </label>
    <label class="radio-inline">
      <input type="radio" name="optradio">Option 3
    </label>
  </form>
</div>

</body>
</html>