2017-01-05 2 views
0

enter image description hereКаков наилучший способ сделать это отзывчивым в бутстрапе?

У меня есть макет, который я хочу сделать отзывчивым в бутстрапе в соответствии с устройством. Я хочу знать, как я могу выполнить его так, как показано на изображении. Я пробовал использовать ячейки таблицы и столбцы/строки начальной загрузки, но безрезультатно.

Я хочу, чтобы элементы выше доступности и ссылка 1 упали слева от слов. Как я могу это сделать?

Вот мой HTML и CSS:

<div class="col-md-12" style="border:black solid 1px;"> 
    <div class="row vertical-align"> 
     <div class="col-sm-2"> 
      <div class="row"> 
       <div style="padding:5px;" class="col-xs-4"> 
        <input style="margin:40px 0 0;" class="form-inline form-control" type="checkbox" /> 
       </div> 
       <div class="col-xs-8"> 
        <img class="img-responsive" src="https://img-new.cgtrader.com/items/109741/84b639735c/human-stylized-head-bust-base-3d-model-ztl.jpg" /> 
       </div> 
      </div> 
     </div> 
     <div class="col-sm-3"> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <div><strong>Name:</strong>Bob</div> 
       </div> 
      </div> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <div><strong>Agency:</strong>AFDM</div> 
       </div> 
      </div> 
     </div> 
     <div class="col-sm-3"> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <div><strong>Stack:</strong>ADCM</div> 
       </div> 
      </div> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <div><strong>Grade:</strong>C</div> 
       </div> 
      </div> 
     </div> 
     <div class="col-sm-1"> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <div class="led-red-trans"></div> 
       </div> 
      </div> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <strong>Available</strong> 
       </div> 
      </div> 
     </div> 
     <div class="col-sm-1"> 
       <div class="row"> 
       <div class="col-xs-12"> 
        <span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span> 
       </div> 
      </div> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <strong>Link</strong> 
       </div> 
      </div> 
     </div> 
     <div class="col-sm-2"> 
        <div class="row"> 
       <div class="col-xs-12"> 
        <a data-toggle="collapse" href="#collapseme"><span class="glyphicon glyphicon-chevron-down" aria-hidden="true"></span></a> 
       </div> 
      </div> 
      <div class="row"> 
       <div class="col-xs-12"> 
        <strong>More</strong> 
       </div> 
      </div> 
     </div> 
    </div> 
    <div class="row"> 
     <div class="col-sm-12"> 
      <div id="collapseme" class="panel-collapse collapse"> 
        <ul class="list-group"> 
        <li class="list-group-item">One</li> 
        <li class="list-group-item">Two</li> 
        <li class="list-group-item">Three</li> 
        </ul> 
       </div> 
      </div> 
    </div> 
</div> 

CSS:

.vertical-align { 
    display: flex; 
    align-items: center; 
} 

.led-red-trans { 
    margin: 0 auto; 
    width: 24px; 
    height: 24px; 
    background-color: #F00; 
    border-radius: 50%; 
    box-shadow: rgba(0, 0, 0, 0.2) 0 -1px 7px 1px, inset #441313 0 -1px 9px, rgba(255, 0, 0, 0.5) 0 2px 12px; 
} 

    /* Large Devices, Wide Screens */ 
    @media (min-width : 1200px) { 
     .vertical-align { 
      display: flex; 
      align-items: center; 
     } 
    } 

    /* Medium Devices, Desktops */ 
    @media (min-width : 992px) and (max-width : 1199px) { 

     .vertical-align { 
      display: flex; 
      align-items: center; 
     } 
    } 

    /* Small Devices, Tablets */ 
    @media (max-width : 768px) and (max-width : 991px) { 
     .vertical-align { 
      display: flex; 
      align-items: center; 
     } 

    } 

    /* Extra Small Devices, Phones */ 
    @media (max-width : 767px) { 

     .vertical-align { 
      display: block; 
      align-items: center; 
     } 

    } 

    /* Custom, iPhone Retina */ 
    @media (max-width : 480px) { 

     .vertical-align { 
      display: block; 
      align-items: center; 
     } 

    } 

И CODEPEN: http://codepen.io/nilerafter24/pen/VPYpqq

ответ

1

Это теория за тем, как я хотел бы сделать свой код:

enter image description here

  • Окружать каждый из разделов в div и float:left их или display: inline-block их.
  • Используйте теги мультимедиа, чтобы добавить float: none или display: block, когда придет время.

Примечание Не используйте таблицу для адаптивного дизайна, это самое худшее дело.

Грубый пример:

.first, 
 
.second, 
 
.third { 
 
    width: 33%; 
 
    padding: 1%; 
 
    display: inline-block; 
 
} 
 

 
img { 
 
    max-width: 100%; 
 
} 
 

 

 
.vertical-align { 
 
    display: flex; 
 
    align-items: center; 
 
} 
 

 
.led-red-trans { 
 
    margin: 0 auto; 
 
    width: 24px; 
 
    height: 24px; 
 
    background-color: #F00; 
 
    border-radius: 50%; 
 
    box-shadow: rgba(0, 0, 0, 0.2) 0 -1px 7px 1px, inset #441313 0 -1px 9px, rgba(255, 0, 0, 0.5) 0 2px 12px; 
 
} 
 

 

 
/* Large Devices, Wide Screens */ 
 

 
@media (min-width: 1200px) { 
 
} 
 

 

 
/* Medium Devices, Desktops */ 
 

 
@media (min-width: 992px) and (max-width: 1199px) { 
 
} 
 

 

 
/* Small Devices, Tablets */ 
 

 
@media (max-width: 768px) and (max-width: 991px) { 
 
    
 
} 
 

 

 
/* Extra Small Devices, Phones */ 
 

 
@media (max-width: 767px) { 
 
} 
 

 

 
/* Custom, iPhone Retina */ 
 

 
@media (max-width: 480px) { 
 
    .vertical-align { 
 
    display: block; 
 
    align-items: center; 
 
    } 
 

 

 
    .first, 
 
    .second, 
 
    .third { 
 
    width: 100%; 
 
    } 
 
}
<div class="col-md-12" style="border:black solid 1px;"> 
 
    <div class="row vertical-align"> 
 
    <div class="col-sm-2 first"> 
 
     <div class="row"> 
 
     <div style="padding:5px;" class="col-xs-4"> 
 
      <input style="margin:40px 0 0;" class="form-inline form-control" type="checkbox"> 
 
     </div> 
 
     <div class="col-xs-8"> 
 
      <img class="img-responsive" src="https://img-new.cgtrader.com/items/109741/84b639735c/human-stylized-head-bust-base-3d-model-ztl.jpg"> 
 
     </div> 
 
     </div> 
 
    </div> 
 
     <div class="second"> 
 
    <div class="col-sm-3"> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <div><strong>Name:</strong>Bob</div> 
 
     </div> 
 
     </div> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <div><strong>Agency:</strong>AFDM</div> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    <div class="col-sm-3"> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <div><strong>Stack:</strong>ADCM</div> 
 
     </div> 
 
     </div> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <div><strong>Grade:</strong>C</div> 
 
     </div> 
 
     </div> 
 
    </div> 
 
      </div> 
 
     <div class="third"> 
 
    <div class="col-sm-1"> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <div class="led-red-trans"></div> 
 
     </div> 
 
     </div> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <strong>Available</strong> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    <div class="col-sm-1"> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span> 
 
     </div> 
 
     </div> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <strong>Link</strong> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    <div class="col-sm-2"> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <a data-toggle="collapse" href="#collapseme"><span class="glyphicon glyphicon-chevron-down" aria-hidden="true"></span></a> 
 
     </div> 
 
     </div> 
 
     <div class="row"> 
 
     <div class="col-xs-12"> 
 
      <strong>More</strong> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </div> 
 
    </div> 
 
    <div class="row"> 
 
    <div class="col-sm-12"> 
 
     <div id="collapseme" class="panel-collapse collapse"> 
 
     <ul class="list-group"> 
 
      <li class="list-group-item">One</li> 
 
      <li class="list-group-item">Two</li> 
 
      <li class="list-group-item">Three</li> 
 
     </ul> 
 
     </div> 
 
    </div> 
 
    </div> 
 
</div>

+0

оценить усилия, но я действительно не думаю, что это помогает .. Добавление часть кода тоже будет полезно, а не делать это как произведение назначения на OP и для будущей толпы –

+0

Да, я понял, что после ... работая над этим сейчас ... –

+0

Это имеет смысл! Позвольте мне попробовать это сейчас –

1

Мое предложение было бы разбить его на 3 колонки. Затем разделите эти столбцы на под столбцы. Как так ..

large screen 
     l4      l4         l4 
|    |  l6  |  l6  |  l6   l6 | 
| Image | |Name, Agency| |Stack, Group| | |Availability| |Link 1| | 

medium screen 
     m4    m4    m4 
|    |  m12  |  m12 
|    | |Name, Agency| | |Availability| 
|    |  m12  |  m12 
|    | |Stack, Group| | |Link 1| 

small screen everything will be sm-12 

простая реализация - codepen

2

это поможет вам некоторые, как с чистыми классами начальной загрузки.

<div class="col-md-12" style="border:black solid 1px;"> 
    <div class="row vertical-align"> 
     <div class="col-xs-12 col-sm-4 col-md-4 col-lg-4"> 
      <div class="row"> 
       <div style="padding:5px;" class="col-xs-4"> 
        <input style="margin:40px 0 0;" class="form-inline form-control" type="checkbox" /> 
       </div> 
       <div class="col-xs-8"> 
        <img class="img-responsive" src="https://img-new.cgtrader.com/items/109741/84b639735c/human-stylized-head-bust-base-3d-model-ztl.jpg" /> 
       </div> 
      </div> 
     </div> 
     <div class="col-xs-12 col-sm-4 col-md-4 col-lg-4"> 
      <div class="row"> 
       <div class="col-xs-12 col-lg-6"> 
        <div><strong>Name:</strong>Bob</div> 
       </div> 
      <div class="col-xs-12 col-lg-6" > 
        <div><strong>Stack:</strong>ADCM</div> 
       </div> 

      </div> 

      <div class="row"> 

      <div class="col-xs-12 col-lg-6"> 
        <div><strong>Agency:</strong>AFDM</div> 
       </div> 
       <div class="col-xs-12 col-lg-6"> 
        <div><strong>Grade:</strong>C</div> 
       </div> 
      </div> 
     </div> 
     <div class="col-xs-12 col-sm-4 col-md-4 col-lg-4"> 
      <div class="row"> 
       <div class="col-xs-6 col-lg-6 col-sm-6 col-md-6"> 
        <span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span> 
       </div> 
       <div class="col-xs-6 col-lg-6 col-sm-6 col-md-6"> 
        <span class="glyphicon glyphicon-lamp" aria-hidden="true"></span> 
       </div> 

       <div class="col-xs-6 col-lg-6 col-sm-6 col-md-6"> 
        <strong>Available</strong> 
       </div> 

       <div class="col-xs-6 col-lg-6 col-sm-6 col-md-6"> 
        <strong>Link</strong> 
       </div> 
      </div> 
     </div> 
    </div> 
    <div class="row"> 
     <div class="col-sm-12"> 
      <div id="collapseme" class="panel-collapse collapse"> 
        <ul class="list-group"> 
        <li class="list-group-item">One</li> 
        <li class="list-group-item">Two</li> 
        <li class="list-group-item">Three</li> 
        </ul> 
       </div> 
      </div> 
    </div> 
</div>