Мне не нова магия Flexbox, но я не часто ее использую, и поэтому после паузы в использовании мне приходится открывать вот этот пост на CSS-Tricks чтобы освежить память.

Я решила создать краткую визуальную шпаргалку по Flexbox для тех случаев освежения памяти после паузы в будущем. Думаю, что у меня получилась шпаргалка, основанная на… шпаргалках.



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

Для тех, кто захочет распечатать эту шпаргалку я подготовила PDF.

image
Поделиться с друзьями
-->

Комментарии (23)


  1. limonte
    30.10.2016 15:27
    +9

    Уважаемая администрация TM, я хотел не полагаться на внешние ресурсы и загрузить эту шпаргалку на habrastorage, но столкнулся с проблемой:

    image

    У меня к вам 2 вопроса:

    1. Что такое длина изображения?
    2. Зачем ограничивать загружаемую картинку по ширине/высоте?


    1. Carduelis
      30.10.2016 17:12
      -23

      Затем, чтобы не было таких постов


      1. limonte
        30.10.2016 17:14
        +16

        Для решения быть посту или не быть есть голосование. Хостинг картинок не должен решать такие вопросы.


    1. Boomburum
      31.10.2016 00:29
      +2

      Поправим длину на глубину ширину ) А ограничение — чтобы всякие 5К-обои не заливали. В данном случае длинную картинку было бы правильней порезать на несколько частей, потому что рассмотреть её на смартфоне может быть проблематично.


      1. limonte
        31.10.2016 00:38

        Поправим длину на глубину ширину

        Высоту :)

        А ограничение — чтобы всякие 5К-обои не заливали.

        Я не против ограничения по ширине, о чем собственно и написано на главной:

        image

        Ограничение по высоте можно убрать, 5K обои будут фильтроваться валидатором по размеру картинки в МБ.

        В данном случае длинную картинку было бы правильней порезать на несколько частей, потому что рассмотреть её на смартфоне может быть проблематично.

        Не совсем понятно почему? Смотрю в Хроме на 5.5-дюймовом смартфоне и все выглядит так как и должно:


        1. Odrin
          31.10.2016 10:59
          +3

          все выглядит так как и должно

          Нет, не читаемый и не выделяемый мелкий текст картинкой — это не так, как и должно быть.


          1. taliban
            01.11.2016 01:27
            +1

            А что вам там с телефона выделять надо? Это информационный бланк, и такие вещи очень часто картинкой делают. Или думаете если сделать 5 картинок и пустить друг за другом (что советует администрация) то сразу можно будет выделать и читабельней текст будет?


  1. xforce
    30.10.2016 15:39
    +2

    А где перевод-то, если всё на англицком? Может лучше как-то так: https://i.gyazo.com/a0c6a71bea0bb9dd9c3d15cfafb329bf.png


    1. limonte
      30.10.2016 15:43

      О! Кто-то отлично постарался. Напишите пожалуйста, кто автор переведенной шпаргалки. Если у него есть аккаунт на Хабре, буду рад зайти и поставить стрелку вверх, если нет — сообщество подарит инвайт :)


      1. SelenIT3
        30.10.2016 23:38
        +2

        Автор переведенной шпаргалки на Хабре есть:)

        Кстати, в переведенной версии заодно исправлена некоторая визуальная неточность оригинала насчет значения space-around.


  1. Neocaridina
    30.10.2016 19:46
    -1

    Имхо, вместо этих фруктов проще юзать 1-2-3


  1. Electrohedgehog
    31.10.2016 05:48

    У Джони есть ещё одна очень хороша штука — Pocket Guide to Writing SVG (http://svgpocketguide.com/book/#intro). На мой взгляд самый хороший учебник по SVG. Если кто не знаком, настоятельно рекомендую. Переводы вроде есть, но там и без них всё очевидно.


    1. SelenIT3
      31.10.2016 09:38
      +2

      Если кому-то окажется удобнее с переводом, то вот он (на всякий случай:).


  1. alfatek
    31.10.2016 10:36

    Из нового для себя отметил align-self.


  1. morr
    31.10.2016 14:40
    -3

    К сожалению flexbox до сих пор нельзя использовать на продакшене.
    caniuse говорит, что текущие IE, андроиды версии ниже 4.4, а так же UC Browser имеют не полную поддержку flexbox.


    1. Avdeev
      31.10.2016 15:37
      +1

      Можно и используется уже очень много где.
      Убираем IE8 из списка поддерживаемых браузеров и используем с автопрефиксером.


    1. SelenIT3
      31.10.2016 17:15
      +1

      Текущие IE называются Edge и глючат с флексбоксами не больше остальных. А старые андроиды вполне могут пережить фолбэк, хоть до простой одноколоночной раскладки, к тому же на них легко ставятся (и часто установлены «из коробки») те же Хром или Опера Мини.


      1. morr
        31.10.2016 17:57

        Через год верю, что так и будет. Сейчас же по разным источникам раз два доля IE11 в разы превышает долю Edge.
        Конечно ещё сильно зависит от аудитории сайта, но вряд ли какой-либо бизнес поймёт, если разработчики предложат потенциально выкинуть 3-5% клиентов.


        1. Kenya
          01.11.2016 14:20

          никто не предлагает совсем их выкинуть, для них просто нужно предусмотреть версию сайта попроще (fallback, как написано выше)


        1. SelenIT3
          01.11.2016 18:00
          +1

          У IE11 в общем-то дела не так плохи, как у IE10 и старых андроидов. По крайней мере, он понимает общепринятый беспрефиксный синтаксис и многострочность. Баги есть, да, но далеко не все они критичны и неизлечимы.

          Ну и в Рунете его доля уже намного меньше 3% и продолжает быстро падать. А на популярных сайтах типа вконтакта — и вовсе меньше процента. Так что надо смотреть по конкретной аудитории.


  1. Krivega
    01.11.2016 14:20
    +2

    Если уж flex-grow упомянули, то и flex-shrink тоже надо.


    1. Avdeev
      01.11.2016 21:43

      flex-basis тоже не хватает

      Важность этого свойства понимаешь, когда начинаешь реально работать с flexbox


  1. R_o_u_n_d
    03.11.2016 20:44

    Хорошо так работать с контейнером, в который всё помещается и даже остается свободное место.
    А как также волшебно впихнуть невпихуемое поместить в контейнер все элементы, которые в него изначально все вместе не помещаются?
    Используя эти… автомасштабирование (сжатие, при необходимости), сортировку, расположение, выравнивание и прочие flex-плюшки?