За последние 24 часа нас посетили 22364 программиста и 1014 роботов. Сейчас ищут 694 программиста ...

Размещение кнопок с помощью Bootstrap

Тема в разделе "HTML и CSS", создана пользователем Nikel41, 5 июн 2017.

Метки:
  1. Nikel41

    Nikel41 Новичок

    С нами с:
    4 июн 2017
    Сообщения:
    9
    Симпатии:
    2
    Добрый день, форумчане!
    Прошу подсказки в освоении Bootstrap, вероятно не понимаю основного принципа работы.
    Стоит большая задача, но начал с простого примера, хочу сделать 2 кнопки стабильной ширины в 8 колонок Bootstrap ровно по центру экрана на устройствах любого размера.
    Код следующий:
    HTML:
    1. <!DOCTYPE html>
    2.     <title>Bootstrap test</title>
    3.     <meta charset="utf-8">
    4.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
    5.     <link href="css/bootstrap.min.css" rel="stylesheet">  
    6. </head>
    7.  
    8. <form class="my_buttons">
    9.     <div class="row">
    10.         <div class="col-lg-8 col-lg-offset-2 col-sm-8 col-sm-offset-2 col-xs-8 col-xs-offset-2 col-md-8 col-md-offset-2">
    11.             <button formaction="https://www.yandex.ru/"> Ссылка на Яндекс </button><br>
    12.             <button formaction="https://www.rambler.ru/"> Ссылка на Рамблер </button>
    13.         </div>
    14.     </div>
    15. </form>
    16.  
    17. </body>
    18. </html>
    Полученные кнопки упорно не хотят занимать свою позицию, хотя казалось бы, что колонка шириной в 8 столбцов и отступом в 2 столбца должна явно указывать на размер формы.
    Прошу помощи, надеюсь, что решение этой задачи поможет в понимании вопроса в целом и дальнейшем самостоятельном решении в более масштабных пропорциях...
    Спасибо!
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Что тут на логика? Может хватило бы просто col-xs-8 col-xs-offset-2 например + у кнопок что-то вроде класса btn-block должно стоять, чтобы они заполнили всё свободное место по ширине.
    Добавь изображения что вышло и что ты хочешь получить, думаю так будет проще понять задачу
     
    Nikel41 нравится это.
  3. Nikel41

    Nikel41 Новичок

    С нами с:
    4 июн 2017
    Сообщения:
    9
    Симпатии:
    2
    Спасибо за подсказку, хочу получить в итоге примерно то, что на скриншоте:
    [​IMG]
    Т.е. форму авторизации, на которой центральные элементы всегда по центру вне зависимости от размера экрана устройства.
    Плюс соответственно, изменение размера шрифта и самих элементов пропорционально размеру экрана.
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
  5. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    при чем тут бутстрап? =) просто размести элементы по центру родителя, а родителя можно на всю ширину (или почти) сделать через бутстрап или не через бутстрап - уже не важно.
     
  7. bikerlex

    bikerlex Активный пользователь

    С нами с:
    2 дек 2014
    Сообщения:
    344
    Симпатии:
    40
    Ну как это причем? Он верстает на бутстрапе. Если это сайт с фиксированной шириной - без контейнера у него получится резиновый. Да и у блока class="row" отрицательные маргины, которые паддингами компостирует контейнер. Если решит сделать на всё ширину у него появится горизонтальный скрол. Зачем изначально верстать не правильно?
    Ну а по кнопкам на всю ширину блока - достаточно к кнопкам добавить класс class="btn-block".
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    .container-fluid > .row > .col-*-12 и в нём по центру
     
  9. Nikel41

    Nikel41 Новичок

    С нами с:
    4 июн 2017
    Сообщения:
    9
    Симпатии:
    2
    Товарищи, спасибо большое всем за советы!
    Смотрите, задача стоит примерно такая, как на рисунке: https://ibb.co/hga35v (не смог залить картинку напрямую из-за размера файла, это ссылка на хостинг).
    Код написан следующий:
    index.php
    HTML:
    1.  
    2. <!DOCTYPE html>
    3. <html lang="ru-RU">
    4. <meta charset="UTF-8">
    5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6.     <meta name="viewport" content="width=device-width, initial-scale=1">
    7.     <title>Sokolov.ru</title>
    8.     <link href="/css/bootstrap.css" rel="stylesheet">
    9.     <link href="/css/style.css" rel="stylesheet" type="text/css">  
    10. </head>
    11.  
    12. <div class="logo_switch">
    13.     <div class="row">
    14.         <div class="col-xs-4">
    15.         <img src="logo_vert.png" style="width: 100%">
    16.         </div>
    17.  
    18.         <div class="col-xs-2 col-xs-offset-6">
    19.         <a id="rus" href="index.php?lang=ru" style="color:<?php echo "$ru_color";?>">РУ</a>
    20.         <a href="index.php?lang=en" style="color:<?php echo "$en_color";?>">ENG</a>
    21.         </div>
    22.     </div>
    23. </div>
    24.  
    25. <form class="all_active_elements">
    26.  
    27. <div class="Header_Plus_tip">
    28.     <div class="row">
    29.         <div class="col-xs-8">
    30.             Для доступа в ИНТЕРНЕТ необходимо пройти идентификацию
    31.         </div>
    32.  
    33.         <div class="col-xs-2 col-xs-offset-2">
    34.             <input type="checkbox" id="tip_1" class="tip-checkbox">
    35.                 <label for="tip_1">
    36.                     <img src="q_mark.png" alt="tip_1" style="width: 100%">
    37.                 </label>
    38.  
    39.                 <span class="tip">
    40.                     Подсказка номер один.
    41.                     <label for="tip_1" class="tip-close">X</label>
    42.                 </span>
    43.         </div>      
    44.     </div>  
    45. </div>
    46.  
    47. <div class="Big_checkbox">
    48.     <div class="row">
    49.         <div class="col-xs-10 col-offset-1">
    50.             <input type="checkbox" class="Big_checkbox">
    51.             <label for="Big_checkbox">Я прочитал и согласен с условиями <a href="#"><ins>пользовательского соглашения</ins></a></label>
    52.         </div>
    53.     </div>
    54. </div>
    55.  
    56. <div class="Buttons_Plus_tips">
    57.     <div class="row">
    58.         <div class="col-xs-10 col-xs-offset-1">
    59.             <div class="col-xs-8">
    60.                 <button type="button" class="btn btn-primary btn-block">С помощью СМС</button>
    61.             </div>
    62.  
    63.             <div class="col-xs-2 col-xs-offset-2">
    64.             <input type="checkbox" id="tip_2" class="tip-checkbox">
    65.                 <label for="tip_2">
    66.                     <img src="q_mark.png" alt="tip_2" style="width: 100%">
    67.                 </label>
    68.  
    69.                 <span class="tip">
    70.                     Подсказка номер два.
    71.                     <label for="tip_2" class="tip-close">X</label>
    72.                 </span>
    73.             </div>
    74.  
    75.             <div class="col-xs-8">
    76.                 <button type="button" class="btn btn-primary btn-block">Через Госуслуги</button>
    77.             </div>
    78.  
    79.             <div class="col-xs-2 col-xs-offset-2">
    80.             <input type="checkbox" id="tip_3" class="tip-checkbox">
    81.                 <label for="tip_3">
    82.                     <img src="q_mark.png" alt="tip_3" style="width: 100%">
    83.                 </label>
    84.  
    85.                 <span class="tip">
    86.                     Подсказка номер три.
    87.                     <label for="tip_3" class="tip-close">X</label>
    88.                 </span>
    89.             </div>
    90.  
    91.             <div class="col-xs-8">
    92.                 <button type="button" class="btn btn-primary btn-block">Бесплатным звонком</button>
    93.             </div>
    94.  
    95.             <div class="col-xs-2 col-xs-offset-2">
    96.             <input type="checkbox" id="tip_4" class="tip-checkbox">
    97.                 <label for="tip_4">
    98.                     <img src="q_mark.png" alt="tip_4" style="width: 100%">
    99.                 </label>
    100.  
    101.                 <span class="tip">
    102.                     Подсказка номер четыре.
    103.                     <label for="tip_4" class="tip-close">X</label>
    104.                 </span>
    105.             </div>
    106.  
    107.         </div>
    108.     </div>
    109.  
    110. </div>
    111.  
    112. </form>
    113. </body>
    114. </html>
    115.  
    style.css
    Код (CSS):
    1. #rus {
    2.     border-right: 1px solid black;
    3.     padding-right: 4px;
    4. }
    5.  
    6. .logo_switch{
    7.     margin-right: 7%;
    8.     margin-top: 4%;
    9.     margin-left: 7%;
    10. }
    11.  
    12. .tip-checkbox{
    13.     display: none;
    14. }
    15.  
    16. .tip{
    17.     display: none;
    18. }
    19.  
    20. #tip_1:checked ~ .tip {
    21.   display: block;
    22. }
    23.  
    24. #tip_2:checked ~ .tip {
    25.   display: block;
    26. }
    27.  
    28. #tip_3:checked ~ .tip {
    29.   display: block;
    30. }
    31.  
    32. #tip_4:checked ~ .tip {
    33.   display: block;
    34. }
    35.  
    36. .Header_Plus_tip{
    37.     margin-top: 10%;
    38.     margin-bottom: 10%;
    39.     margin-right: 7%;
    40.     margin-left: 7%;
    41. }
    42.  
    43. .Big_checkbox{
    44.     margin-left: 10%;
    45.     margin-right: 10%;
    46.     margin-bottom: 4%;
    47. }
    Выходит все равно какая-то кривь..(
    Может я не очень логично разбил строки и колонки? Центрирование текста по вертикали тоже не совсем понятно как правильно сделать.
    Подскажите пожалуйста.
    Спасибо!
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    Nikel41 нравится это.
  11. Nikel41

    Nikel41 Новичок

    С нами с:
    4 июн 2017
    Сообщения:
    9
    Симпатии:
    2
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    в шаблон ты не попал, если это тебе важно
    (да впрочем и шаблон не ахти)
    но лого на месте, да

    Круто!
     
  13. Nikel41

    Nikel41 Новичок

    С нами с:
    4 июн 2017
    Сообщения:
    9
    Симпатии:
    2
    Соответственно в постановку моей задачи входит, чтобы полученная страничка перво-наперво корректно отображалась на всех мобильных устройствах. Такие дела..
    --- Добавлено ---
    Дааа) В шаблон тут важно попасть на самом деле)
    --- Добавлено ---
    Может быть можно было более удачно выбрать строки и колонки bootstrap'а, чтобы точнее подогнаться под шаблон?
     
  14. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    и да и нет.
    как по мне, у тебя вообще там бутстрапу не место при таких шаблонах