Как отобразить только 3 кнопки в строке, используя boostrap? - PullRequest
0 голосов
/ 08 апреля 2020

form{


  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  align-content: space-around;

}


form .buttons{

	width: 100%;
	border: none;
	background-color: #ffffff00;
	cursor: pointer;

}

form .buttons img{

	width: 100%;

}

form button{

	width: 100%;
	border: none;
	color: #fff;
	background-color: #000000;

}

Я ладья ie в bootstrap для начинающих. Дело в том, что у меня есть десять кнопок, которые содержат изображение, но в зависимости от оператора if будут отображаться не все кнопки. Моя проблема состоит в том, чтобы отобразить оставшуюся кнопку 3 для каждой строки, используя bootstrap или css. Я использовал таблицы, flexbox, grid, но все равно не могу.

echo "</head>";
   echo"<body>";
  echo "<script src=\"../js/jquery.js\"></script>";
  echo "<form  action='../include/newHealthScore.php' method='post'>";
  echo "<input type='text' name='input1' id='input1' value='' hidden='true'>
  <input type='text' name='input2' id='input2' value='' hidden='true'>
  <input type='text' name='input3' id='input3' value='' hidden='true'>";
  echo "<div class = 'container'>";
  echo "<div class = 'col-md-12'>";
  echo "<div class=\"jumbotron jumbotron-fluid\">
    <div class=\"container\"  align=\"center\">
      <h1 class=\"display-4\">Choose a maximum of 3 options</h1>
      <p class=\"lead\" align=\"justify\">Depending on your health score calculated, some option will be available for you to choose. Each option will give you points so as to increase your overall health score. Point for blood pressure is displayed in pink. Point for LDL is displayed in yellow. Point for HDL is displayed in blue. Point for HbA1c is displayed in orange. Point for waist is displayed in green. Finally point for whether you smoke or not is displayed in brown.</p>
    </div>
  </div>";
  echo "</div>";
  echo "</div>";
  echo "<div class = 'container'>";
  echo "<div class='d-inline-flex'>";
  if( $bPressure < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity1' type='button'><img src='../img/salt.png'></button><br/>";
  }
  if($bPressure < 10 || $ldl < 10 || $hdl < 10 || $hba1c < 10 || $waist < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity2' type='button' ><img src='../img/balancemeal.png'></button><br/>";
    echo "</div>";
  }
  if ($bPressure < 10 || $ldl < 10 || $hba1c < 10 || $waist < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity3' type='button'><img src='../img/rawveg.png'></button><br/>";
    echo "</div>";
  }
  if($hdl < 10 || $ldl < 10 || $hba1c < 10 || $waist < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity4' type='button'><img src='../img/fat.png'></button><br/>";
    echo "</div>";
  }
  if($ldl < 10 || $hba1c < 10 || $waist < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity5' type='button'><img src='../img/sugar.png'></button><br/>";
    echo "</div>";
  }

  if($bPressure < 10 || $hdl < 10 || $hba1c < 10 || $waist < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity6' type='button'><img src='../img/alcohol.png'></button><br/>";
    echo "</div>";
  }
  if($bPressure < 10 || $ldl < 10 || $hdl < 10 || $hba1c < 10 || $waist < 10 || $smoke < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity7' type='button'><img src='../img/30min.png'></button><br/>";
    echo "</div>";
  }
  if($bPressure < 10 || $ldl < 10 || $hdl < 10 || $hba1c < 10 || $smoke < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity8' type='button'><img src='../img/walk303.png'></button><br/>";
    echo "</div>";
  }
  if($smoke < 10)
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity9' type='button'><img src='../img/smoking.png'></button><br/>";
    echo "</div>";
  }
  if($takePill = "y")
  {
    echo "<div class=\"p-2\">";
    echo "<button class='buttons' value='activity10' type='button'><img src='../img/pills.png'></button>";
    echo "</div>";
  }
  echo "<div class= 'd-flex justify-content-center'>";
  echo "<input class = 'btn btn-primary rounded-pill btm-lg btn-huge' type='submit' name='Submit' value = 'Submit'/>";
  echo "</div>";

  echo "</form>";
  echo "</div>";
  echo "</div>";

  echo "<script src=\"https://code.jquery.com/jquery-3.4.1.slim.min.js\"></script>
  <script src=\"https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js\" ></script>
  <script src=\"https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js\" ></script>
";
  echo "</body>";
[enter image description here][1]
I found a way to do it. but now new problem arises. They are glued together and now i can't put a space between them. Also they do not fill up the container.
Bellow is the new code

<!-- begin snippet: js hide: false console: true babel: false -->

1 Ответ

1 голос
/ 08 апреля 2020

Просто с помощью grid system of Bootstrap. У вас может быть div с container, и если вы хотите иметь полноразмерный контейнер, у div должен быть класс container-fluid, тогда для каждой строки кнопок вам нужно сделать div с классом row и поставить кнопка - в этом случае три кнопки - в каждом ряду внутри div с col классами и присваивают css класс с именем btn-block каждой кнопке, как это:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link
      rel="stylesheet"
      href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
      integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
      crossorigin="anonymous"
    />
    <title>Having three buttons per row in Bootstrap 4.4.1</title>
  </head>
  <body>
    <div class="container-fluid">
      <div class="row m-2">
        <div class="col">
          <button type="button" class="btn btn-primary m-1 btn-block">btn 1</button>
        </div>
        <div class="col">
          <button type="button" class="btn btn-primary m-1 btn-block">btn 2</button>
        </div>
        <div class="col">
          <button type="button" class="btn btn-primary m-1 btn-block">btn 3</button>
        </div>
      </div>
      <div class="row m-2">
        <div class="col">
          <button type="button" class="btn btn-secondary m-1 btn-block">btn 1</button>
        </div>
        <div class="col">
          <button type="button" class="btn btn-secondary m-1 btn-block">btn 2</button>
        </div>
        <div class="col">
          <button type="button" class="btn btn-secondary m-1 btn-block">btn 3</button>
        </div>
      </div>
    </div>
    <script
      src="https://code.jquery.com/jquery-3.4.1.slim.min.js"
      integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n"
      crossorigin="anonymous"
    ></script>
    <script
      src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
      integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
      crossorigin="anonymous"
    ></script>
    <script
      src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"
      integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6"
      crossorigin="anonymous"
    ></script>
  </body>
</html>

И в случае, если вам нужен btn-group, вы можете использовать их вместо обычного btn, и вы можете узнать больше об этом из связанной Bootstrap документации для btn -группа .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...