Ответы пользователя по тегу Bootstrap
  • Как убрать padding?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Как и сказал выше — оберните header в row, header дать ширину 100%
    Внутри еще есть row, его нужно обернуть в col-12
    https://codepen.io/anon/pen/NVRvmV?editors=1000

    UPD
    Я немного подзабыл классы бутстрапа. Вот так видимо будет "правильнее" (класс col для header) https://codepen.io/anon/pen/xNEXqp?editors=1100
    Ответ написан
    Комментировать
  • Как менять $primary в 4-ом бутстрапе в зависимости от id страницы?

    delphinpro
    @delphinpro Куратор тега Sass
    frontend developer
    Делаете несколько файлов: main-default.scss, main-red.scss и т.п.

    В каждом пишете примерно следующее

    $primary: red;
    @import 'vars.scss';
    …


    Дальше дело техники — на каждой странице подключаете свой файл.

    Очевидный недостаток — слишком много дублирующихся стилей на выходе. Но с другой стороны подключается только один из main файлов, и это самое простое решение, не требующее вмешательства в исходники бутстрапа.

    Другой вариант — выдрать все стили, влияющие на цветовую схему и подключать main.css + цветовую схему. Тут возможны под-варианты — отдельные файлы для тем, один файл через корневой селектор. В любом случае тут уже придется вмешиваться в исходники или дублировать часть исходников в своих темах.

    Если у вас будет не очень много тем, лучше пойти по первому пути. Если количество цветовых решений не ограничено, то вытащить часть стилей и инлайнить их прямо в страницу (готовым css).
    Ответ написан
  • Как мобильное меню bootstrap научить открываться справа?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    .menu {
      position: fixed;
      left: 0;
      top: 0;
      transform: translateX(-100%);
      transition: transform 0.3s ease;
      
      &.isOpen {
        transform: translateX(0);
      }
    }


    Непонятно, зачем здесь бутстрап приплетать.
    Ответ написан
    3 комментария
  • Сетки, с чем их едят?

    delphinpro
    @delphinpro Куратор тега Вёрстка
    frontend developer
    Сетка нужна, в первую очередь, дизайнеру. Чтобы выстроить элементы дизайна ровненько, по феншую, на всех страницах одинаково — блоки на скачут в положениях и размерах.

    Верстальщик, в свою очередь, видит, что дизайн выстроен по сетке, и решает упростить себе задачу верстки. Он пишет базовые классы для разметки на странице колонок и размещает блоки в них. Отсюда отпадает необходимость сидеть с линейкой и выравнивать блоки по дизайну.

    Всё остальное — следствие. Верстальщику становится мало просто классов для описания раскладки макета. Он решает приправить их медиа-запросами, чтобы и базовая адаптивность страницы была что называется "из-коробки". Опять же для упрощения и ускорения своего труда. Потом решает еще что-то добавить, к примеру смещение колонок и т.п.

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

    Потом появились дизайнеры, которые стали рисовать свои макеты "под бутстрап" =) Ничего плохого, это ускоряет (а значит удешевляет) разработку конечного продукта. Но нужно понимать, что дизайн первичен. А сетку можно любую сделать.
    Ответ написан
    Комментировать
  • Как в бутстрапе сделать контейнер в контейнере или такой отступ?

    delphinpro
    @delphinpro Куратор тега Вёрстка
    frontend developer
    Не в ту сторону смотрите скорее всего.
    Во-первых, эти отступы актуальны только на больших экранах
    Во-вторых, вряд ли принципиально то, что они равны ширине колонки.

    Просто сделайте свой кастомный контейнер с фиксированными паддингами, пикселей 70-80.

    .my-container {
      max-width: 1300px;
      margin: auto;
    
      @include media-breakpoint-up(xl){
        padding: 0 80px;
      }
    }
    Ответ написан
    Комментировать
  • Не работает overflow, bootstrap 4, в чем проблема??

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Отвечу только на последний вопрос
    Ставил overflow-x на хедер, но тогда меню обрезается вообще полностью по все осям и Х, и Y, что за бред? почему по Y вы высоту меню обрезается-то??


    Если вы задаёте свойство overflow, неважно, по одной оси, или по обеим, то контент в любом случае будет обрезан. Вы можете лишь контролировать как он будет обработан — обрезан (hidden), либо появится полоса прокрутки (scroll/auto). Значение visible заданное лишь по одной оси не сработает.

    Касаемо основного вопроса — лучше бы приложили пример в песочнице, чем скриншоты. Вероятность получения ответа существенно возросла бы.
    Ответ написан
    Комментировать
  • Popover: зафиксировать положение?

    delphinpro
    @delphinpro
    frontend developer
    Обращался к документации, но не понятно

    Непонятно — поясняю: нужно отключить fallbackPlacement.

    $('.....').popover({
      placement: 'bottom',
      fallbackPlacement: [], // <--
    });
    Ответ написан
    1 комментарий
  • Сколько должно быть дизайн-макетов для Bootstrap?

    delphinpro
    @delphinpro
    frontend developer
    3 макета???
    Да вы зажрались, батенька! =))
    В реале получаешь один макет — и крутись как хочешь, но адаптив должен быть.
    Ответ написан
    Комментировать
  • Как увеличить размер текста не изменяя размер его блока?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Ответ написан
    Комментировать
  • Как настроить сетку bootstrap для мобильных?

    delphinpro
    @delphinpro Куратор тега HTML
    frontend developer
    Следует уточнить версию бутстрапа.
    В последней другие классы xs — getbootstrap.com/docs/4.0/layout/grid/#grid-options
    Ответ написан
  • Можно ли где нибудь посмотреть все классы bootstrap4?

    delphinpro
    @delphinpro
    frontend developer
    Ответ написан
    Комментировать
  • Как сделать список стран с флагами с помощью bootstrap?

    delphinpro
    @delphinpro
    frontend developer
    С этим плагином без переделки его внутренней логики — никак.
    Вы бы посмотрели исходник, прежде чем вопрос задавать. Там любой html в опциях жёстко вырезается, даже если их динамически задавать.
    Плюс кастомная разметка генерится по данным из нативного (скрытого) селекта. А в нативном селекте в опциях допустим только текст, никакого html (тут уже браузер сам режет во время построения DOM).
    Ответ написан
  • Как правильно верстать bootstrap + SASS?

    delphinpro
    @delphinpro Куратор тега Sass
    frontend developer
    CDN vs свой билд — экономия на спичках.
    Тем более если вам не нужен весь пакет.

    Начну с самого плохого, неправильного и убогого варианта использования:
    Это когда люди подключают бутстрап.мин.цсс, а потом в своем файлике начинают переопределять стили. Получается полный неподдерживаемый пиздец (я как раз сейчас натягиваю на сайт купленный (!) такой шаблон, нервы на пределе).
    Люди, которые так делают приводят гнилой аргумент: а вдруг мы захотим обновить бутстрап? Серьезно, блять? Как часто вы это делали? ставлю сто баксов, что ни разу.

    Как делать по феншую.

    Для начала, естественно, использовать препроцессорные исходники (не будем выбирать конкретный порт, есть и lеss, и sсss, и stylus, кому что нравится).

    Далее миксины. Не нужно подключать отдельные. Подключите valiables.scss и mixins.scss. Миксины не попадают сами по себе в билд, так пусть они все будут доступны.

    Компоненты. Отключите ненужные, закомментировав импорты соответствующих файлов.

    Кнопки. Если бутстраповские не нужны, отключите их. Напишите свои, используя миксины и даже копипасту части кода из бутстрапа. Это нормально.
    Отличный вариант, если вы напишете свой миксин для кнопки (который и бутстраповские миксины может использовать). Ибо в бутстрапе, к сожалению, нет миксина make-button().

    Если вам нужно переделать компонент или стиль (часто приходится модифицировать навбар, таблицы, навигацию, табы), не стесняйтесь исправить исходник. Но лучше исходнить отключить, скопипастить и подключить свой вариант (возможно даже поменяв классы, но это не всегда прокатит, ибо связанность ужасная). Править нужно, понимая что вы делаете. Потому что бутстрап внутри устроен через жопу. Взять хотя бы класс .nav — лютый пиздец, дикая связанность.

    Пагинация, крошки. Никогда вас не попросят поставить исходные стили. Если по макету эти элементы имеют определенный стиль, этот стиль будет сохраняться. Смело меняйте. Или делайте дубликат.

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

    Ссылки и статьи типа "как верстать под бутстрап" — это исключительно отстойный материал, написанный чаще всего такими же новичками, как и те, кто ищет подобную тему. Хотя базовую инфу вы конечно получите.
    Ответ написан
    4 комментария
  • Как в бутстрап сетке задать ширину под max-width 480px?

    delphinpro
    @delphinpro Куратор тега Вёрстка
    frontend developer
    1. Добавим брикпойнт и контейнер
    $screen-xs-min: 520px;
    $container-xs: 480px;


    2. дополним класс .container
    .container {
      @include container-fixed;
    
      @media (min-width: $screen-xs-min) {
        width: $container-xs;
      }
      // … Дальше оставляем как было
    }


    3. поправим миксин
    @mixin make-grid-columns($i: 1, $list: ".col-xxs-#{$i}, .col-xs-#{$i}, .col-sm-#{$i}, .col-md-#{$i}, .col-lg-#{$i}") {
      @for $i from (1 + 1) through $grid-columns {
        $list: "#{$list}, .col-xxs-#{$i} .col-xs-#{$i}, .col-sm-#{$i}, .col-md-#{$i}, .col-lg-#{$i}";
      }
    …


    4. Вызовем его
    @include make-grid-columns();

    5. Заменим строчку
    @include make-grid(xs);
    на
    @include make-grid(xxs);

    6. Добавим

    @media (min-width: $screen-xs-min) {
      @include make-grid(xs);
    }


    И всё!!

    Теперь в промежутке от 0 до 480 можем использовать колонки xxs
    480 — 768 колонки xs
    а далее стандартно.

    [sarkazm on]
    Ничего сложного, да ведь? =)))
    [sarkazm off]

    Поэтому я обычно выкидываю сетку версии 3 и использую гибрид — сетка как в третьей версии, на флоатах и т.д., но используя миксины (тоже немного доработанные) от четвёртой версии.
    Там добавление брикпойнта сводится к простому добавлению значений в пару массивов (мапов) настроек.
    Ответ написан
  • Обтекание текста при position absolute, как добиться?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Раньше этого сделать было нельзя.
    Сейчас в спецификации появилось описание технологии css-shapes (см. на MDN).
    Но, увы, поддержка на текущий момент слабовата — can i use css-shapes?

    Попробуйте компромиссный вариант. Первую строку сделайте абзацем (text-indent) и увеличьте внутренний отступ у прямоугольника, чтобы остальные строки не лезли под картинку.
    Ответ написан
    3 комментария
  • Как использовать сетку bootstrap 4 в scss?

    delphinpro
    @delphinpro Куратор тега Sass
    frontend developer
    Через медиазапрос.

    .something {
      @include make-col-ready();
      @include make-col(12); // xs
    
      @include media-breakpoint-up(sm) {
        @include make-col(6); // sm
      }
    
      @include media-breakpoint-up(xl) {
        @include make-col(3); // xl
      }
    }
    Ответ написан
  • Как перераспределить элементы сетки bootstrap 3 в зависимости от их количества?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Если без флексов и таблиц, именно так как вы сказали — ширина блоков зависит от их количества, то это в принципе реально.
    Выводите все блоки с классами .col-xs-12.my-block (это чтобы по простому унаследовать все стили колонок). Далее загуглите на хабре статью про количественные селекторы. Осмыслите её и напишите тонну селекторов для класса .my-block (для одного блока, для двух, для трёх и т.д., сколько нужно). Задача решена. Работоспособность от IE8 (ну или от IE9 точно) по сравнению с флексами (от IE11).
    Но всё же если не нужна такая глубокая поддержка, лучше сделать на флексах. Проще и быстрее.
    Ответ написан
    Комментировать
  • Как убрать падинг у boostrap 3?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    .bg_left
    {
      background-image: url(img/left.png);
      height: 800px;
      width: auto;
      background-size:cover;
      background-repeat: no-repeat;
      position: absolute;
      top: 0;
      right: ($grid-gutter-width / -2); // <--
    }


    UPD
    У вас картинка фоновая будет?
    Сделайте лучше так https://jsfiddle.net/w2ex7vd9/1/
    Ответ написан
  • Как верстать пиксель перфект на bootstrap?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Левый блок col по ширине может быть равен 2.5(два с половиной стандартных столбца)

    И что здесь не вписывается?

    .col {
      @include make-col-ready();
      @include make-col(2.5);
    }


    аналогично популярная тема с пятью столбиками

    .col-1-of-5 {
      @include make-col-ready();
      @include make-col(1, 5);
    }


    Bootstrap — это не только ценный мех скаченный bootstrap.min.css, это еще и куча полезных миксинов.

    сайты не нарисованные под сетку bootstrap

    нет «сетки bootstrap», есть «сетка в бутстрапе». И с этой сеткой можно творить всё что угодно.
    Отсюда вывод: если дизайн нарисован по сетке (неважно как), то его можно сверстать в том числе и с помощью сетки из состава бутстрапа.
    Ответ написан
    2 комментария
  • Есть ли вырезанная сетка bootstrap 4?

    delphinpro
    @delphinpro
    frontend developer
    https://github.com/delphinpro/bs-grid-system
    микс 3 и 4 версий ))
    миксины от четвертой, флоаты от третьей.
    Ответ написан
    Комментировать