Подтвердить что ты не робот

Как удалить отзывчивые функции в Twitter Bootstrap 3?

Так как Bootstrap 3 больше не разделяет файлы для гибких и стандартных таблиц стилей. Итак, как я могу легко удалить реагирующие функции?

4b9b3361

Ответ 1

Чтобы инактивировать стили, не связанные с рабочим столом, вам просто нужно изменить 4 строки кода в файле variables.less. Задайте контрольные точки ширины экрана в файле variables.less следующим образом:

// Media queries breakpoints
// --------------------------------------------------

// Extra small screen / phone
// Note: Deprecated @screen-xs and @screen-phone as of v3.0.1
@screen-xs:                  1px;
@screen-xs-min:              @screen-xs;
@screen-phone:               @screen-xs-min;

// Small screen / tablet
// Note: Deprecated @screen-sm and @screen-tablet as of v3.0.1
@screen-sm:                  2px;
@screen-sm-min:              @screen-sm;
@screen-tablet:              @screen-sm-min;

// Medium screen / desktop
// Note: Deprecated @screen-md and @screen-desktop as of v3.0.1
@screen-md:                  3px;
@screen-md-min:              @screen-md;
@screen-desktop:             @screen-md-min;

// Large screen / wide desktop
// Note: Deprecated @screen-lg and @screen-lg-desktop as of v3.0.1
@screen-lg:                  9999px;
@screen-lg-min:              @screen-lg;
@screen-lg-desktop:          @screen-lg-min;

Это устанавливает минимальную ширину в нижнем формате мультимедийного контента на рабочем столе, чтобы она применима ко всем ширинам экрана. Благодаря 2calledchaos для улучшения! Некоторые базовые стили определяются в мобильных стилях, поэтому мы должны обязательно их включать.

Изменить: chris отмечает, что вы можете установить эти переменные в онлайн-компиляторе на сайте начальной загрузки

Ответ 2

Это объясняется в официальных документах официального выпуска Bootstrap 3:

Шаги по отключению откликов

Чтобы отключить чувствительные функции, выполните следующие действия. См. Его в действии в измененном шаблоне ниже.

  • Удалить (или просто не добавлять) область просмотра <meta>, упомянутую в документах CSS
  • Снимите максимальную ширину на .container для всех уровней сетки с max-width: none! important; и установите правильную ширину, как ширина: 970px;. Убедитесь, что это происходит после CSS Bootstrap по умолчанию. Вы можете опционально избегать важности с помощью медиа-запросов или некоторых селектор-fu.
  • Если вы используете navbars, отмените все навигация и разворачивающееся поведение (это слишком много, чтобы показать здесь, поэтому посмотрите пример).
  • Для макетов сетки используйте классы .col-xs- * в дополнение к или вместо средних/больших. Не волнуйтесь, сверхмаленькая сетка устройств масштабируется до всех разрешений, поэтому вы настроены там.

Вам все равно понадобится Respond.js для IE8 (так как наши медиа-запросы все еще существуют и их нужно подобрать). Это просто отключает "мобильный сайт" Bootstrap.

См. также пример GetBootstrap.com/examples/non-responsive/

Ответ 3

В последнее время я просто выясню, насколько легко сделать ваш bootstrap v3.1.1 невосприимчивым. Это включает в себя navbars, чтобы не сворачивать. Я не знаю, знают ли все об этом, но я хотел бы поделиться им.

Два шага к невосприимчивому Bootsrap v3.1.1

Сначала создайте имя файла css как not-responsive.css. Обязательно добавьте его в свои темы или ссылку сразу после загрузочных файлов css.

Во-вторых, вставьте этот код в свой файл non-responsive.css:

/* Template-specific stuff
 *
 * Customizations just for the template; these are not necessary for anything
 * with disabling the responsiveness.
 */

/* Account for fixed navbar */
body {
  min-width: 970px;
  padding-top: 70px;
  padding-bottom: 30px;
}

/* Finesse the page header spacing */
.page-header {
  margin-bottom: 30px;
}
.page-header .lead {
  margin-bottom: 10px;
}


/* Non-responsive overrides
 *
 * Utilitze the following CSS to disable the responsive-ness of the container,
 * grid system, and navbar.
 */

/* Reset the container */
.container {
  width: 970px;
  max-width: none !important;
}

/* Demonstrate the grids */
.col-xs-4 {
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #eee;
  background-color: rgba(86,61,124,.15);
  border: 1px solid #ddd;
  border: 1px solid rgba(86,61,124,.2);
}

.container .navbar-header,
.container .navbar-collapse {
  margin-right: 0;
  margin-left: 0;
}

/* Always float the navbar header */
.navbar-header {
  float: left;
}

/* Undo the collapsing navbar */
.navbar-collapse {
  display: block !important;
  height: auto !important;
  padding-bottom: 0;
  overflow: visible !important;
}

.navbar-toggle {
  display: none;
}
.navbar-collapse {
  border-top: 0;
}

.navbar-brand {
  margin-left: -15px;
}

/* Always apply the floated nav */
.navbar-nav {
  float: left;
  margin: 0;
}
.navbar-nav > li {
  float: left;
}
.navbar-nav > li > a {
  padding: 15px;
}

/* Redeclare since we override the float above */
.navbar-nav.navbar-right {
  float: right;
}

/* Undo custom dropdowns */
.navbar .navbar-nav .open .dropdown-menu {
  position: absolute;
  float: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .15);
  border-width: 0 1px 1px;
  border-radius: 0 0 4px 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
          box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
  color: #333;
}
.navbar .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar .navbar-nav .open .dropdown-menu > li > a:focus,
.navbar .navbar-nav .open .dropdown-menu > .active > a,
.navbar .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
  color: #fff !important;
  background-color: #428bca !important;
}
.navbar .navbar-nav .open .dropdown-menu > .disabled > a,
.navbar .navbar-nav .open .dropdown-menu > .disabled > a:hover,
.navbar .navbar-nav .open .dropdown-menu > .disabled > a:focus {
  color: #999 !important;
  background-color: transparent !important;
}

Это все и наслаждайтесь.. ^^

Источник: non-responsive.css из пример на getbootstrap.com.

Ответ 4

Мне нужно было полностью удалить отзывчивую функцию Bootstrap, я в итоге переопределил ее следующим фрагментом:

.container {
    width: 960px !important;
}

@media (min-width: 1px) {
  .container {
    max-width: 940px;
  }
  .col-lg-1,
  .col-lg-2,
[...]

Полный фрагмент: https://gist.github.com/ivanminutillo/8557293

Ответ 5

Источник из: http://getbootstrap.com/getting-started/#disable-responsive

  • Опустить окно просмотра <meta>, указанное в документах CSS
  • Переопределите width в .container для каждого уровня сетки с единственной шириной, например width: 970px !important; Убедитесь, что это происходит после стандартного Bootstrap CSS. Вы можете опционально избегать !important с запросами мультимедиа или некоторым selector-fu.
  • Если вы используете navbars, удалите все пошаговые и расширяющие поведение навигация.
  • Для макетов сетки используйте классы .col-xs-* в дополнение к средним/большим или вместо них. Не волнуйтесь, сверхмалая сетка устройств масштабируется до всех разрешений.

Ответ 7

Если вам нужен сайт с фиксированным размером, это должно быть довольно простым:

// Override container sizes
@container-sm:	700px;
@container-md:	700px;
@container-lg:	700px;

// Fixate media queries to tablet view only (lower viewports set to 0px, desired one to 1px, and the higher to ~9999px)

@screen-xs-min: 0px;
@screen-sm-min:	1px;
@screen-md-min: 9999px;
@screen-lg-min: 9999px;

// Disable responsive features such as navbar-collapse
@grid-float-breakpoint: 1;

Ответ 8

Посмотрите www.goo.gl/2SIOJj, это незавершенное производство, но оно может вам помочь.

Я использую cookie для определения, хочу ли я иметь настольную или отзывчивую версию. В нижнем колонтитуле страницы вы можете найти два пролета и в целом. Js - это script для обработки кликов.

        <div class="col-xs-6" style="text-align:center;"><span class="make_desktop">Desktop</span></div>
        <div class="col-xs-6" style="text-align:center;"><span class="make_responsive">Mobile</span></div>

function setMobDeskCookie(c_name, value, exdays) {
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value = escape(value) + ((exdays === null) ? "" : "; expires=" + exdate.toUTCString());
    document.cookie = c_name + "=" + c_value + "; path=/";
    window.location.reload();
}

$(function() {
    $(".make_desktop").click(function() {
        setMobDeskCookie('deskmob', 1, 3650);
    });
    $(".make_responsive").click(function() {
        setMobDeskCookie('deskmob', 0, 3650);
    });
});`enter code here`

i закончил разделение всех моих собственных CSS на два файла, я не использую bootstrap-навигацию, но мой собственный, так что это большинство моих пользовательских стилей, так что это не решит вашу проблему но он работает для меня

и я также создал not-responsive.css, который заставляет сетку поддерживать большую версию экрана

в случае, если вы выбрали мобильный, я бы загрузил/эхо

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">  
<!-- Bootstrap core CSS and JS -->
        <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <link href="/themes/responsive_lime/bootstrap-3_1_1/css/bootstrap.css" rel="stylesheet">
        <script src="/themes/responsive_lime/bootstrap-3_1_1/js/bootstrap.min.js"></script>

and load these stylesheets
<link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/style.css?modified=14-06-2014-12-27-40" />
<link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/style-responsive.css?modified=1402758346" />

в случае, если вы выберете рабочий стол, я бы загрузил/эхо

<meta name="viewport" content="width=1024">    


        <!-- Bootstrap core CSS and JS -->
        <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <link href="/themes/responsive_lime/bootstrap-3_1_1/css/bootstrap.css" rel="stylesheet">
        <script src="/themes/responsive_lime/bootstrap-3_1_1/js/bootstrap.min.js"></script>

        <!-- Main CSS -->
        <link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/style.css?modified=14-06-2014-12-27-40" />
<link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/non-responsive.css?modified=1402758635" />

non-responsive.css - это тот, который имеет переопределения для начальной загрузки. Меня беспокоит макет, поэтому там не так много, учитывая, что я обрабатываю навигацию по-своему, поэтому css для нее, а остальные биты находятся в моем другие css файлы

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