bozuriciyu, я своей целью на этом ресурсе ставлю передать опыт, а не просто отвечать на вопросы. Это не одно и тоже.
Опыт и правильные решения - это прежде всего ход мышления.
Думать нужно научить, взвешивать преимущества и недостатки, дать понимание, что иногда нужно искать компромиссы, что на самом деле нет ничего идеального, и никто не знает, как правильно...
А короткий ответ новичкам не даёт ничего и порождает аргументацию решений на уровне "сделал так, потому что на Тостере так сказали". Очень здорово. И нам потом с этими людьми работать.
Aetae, для большинства кейсов всё там нормально работает, как и в других браузерах.
Запомнить несколько вещей в духе "если используется justify-content: space-between и крайний элемент стал абсолютным, то в ИЕ остальной контент отображается так, как будто бы этот элемент остался в потоке", запомнить тонкости обращения с его flex-basis - всё. Остальное если и возникает, то крайне редко, и чаще всего фиксится просто интуитивно даже без гугла.
Вы либо неправильно используете флексы, либо у нас очень разные представления о грязных костылях, либо очень разные задачи.
Меня любой вариант устроит, вы можете себе придумать любой другой вплоть до "вот дурак" и закончим на этом, мне с вами нет нужды спорить. Успехов..
Ослик - это IE.
Не описал потому, что об этом никто не спрашивал. Если для человека флексы в ИЕ11 - это куча грязных костылей, он в этом убежден и начинает спорить - пусть. Меня уже давно не задевает, когда в интернете кто-то неправ :)
Сергей Кореневский, может быть, память подводит, я не помню каких-то изменений тут.
Раньше небо всегда голубее кажется, и трава зеленее :)
---
align-items лишний только в том варианте, где есть вложенный элемент, я универсально для всего писал, это же минимальный пример.
А указывать margin без display: block... Ну работает, конечно, потому что флексы... Но менее очевидно, как по мне. Напомню на всякий случай интересующимся, что для инлайновых элементов margin-top и margin-bottom - не применяется. Флекс-элементы - отдельный случай, конечно. Оставлю, пусть будет, хуже от него не становится :)
not_cool, нет, это бинарно работает.
Переменная либо глобальная, либо нет, тут нет цепочки.
Ну, или если так проще для восприятия - объявляя global $var, мы переносим её на самый верхний уровень.
Алексей, в ответ на (2) - есть два инструмента. Один решает узкую задачу и пилится двумя людьми в свободное время. Другой пилится всем миром и полностью, я подчёркиваю, полностью покрывает функционал первого инструмента. Для меня совершенно очевидно, что первый инструмент должен уйти в небытие, сколько бы к нему не было тёплых чувств. Открой вот node_modules. Вот это происходит в том числе потому, что люди тащат в проект много узкоспециализированных вещей вместо того, чтобы пользоваться хоть иногда чем-то универсальным.
"stylelint - инструмент для линтинга, и ни разу не для форматирования"...
Какая разница, для чего инструменты создавались изначально? Важно, что они из себя представляют сейчас. Сейчас есть флаг --fix, который и ты используешь, и это удобно.
Веб изначально создавался для текстовых документов, куда ты со своими картинками?
Ладно, короче, это никуда не ведёт.
Ты топишь за то, что надо иметь в кармане штопор, три ножа, напильник и открывашку. Я топлю за то, что нужно пользоваться швейцарским ножом, если тебе всё это реально пригождается, тем паче что швейцарский нож острее обычного в данном случае.
У нас каждый при своём останется, а ТС и интересующиеся пусть сами выводы делают. Успехов! :)
Алексей, обычно нам надо просто решить задачу, и мы считаем, что её надо решать вот этим инструментом. А инструментов целая гора.
CssComb - умер в 2017 (вроде как с мая 2019 снова какие-то коммиты есть, но это капля в море). Домен даже продлить забыли :)
Stylelint обновляется каждый день, размер сообщества вообще несопоставим.
Stylelint в любом случае на проекте уже есть - вряд ли кому-то важен порядок свойств и неважно всё остальное.
Я лично у CssComb перед stylelint ни одного преимущества не вижу (ну кроме того, что у автора может быть уже готовый конфиг, что когда-то его использовали в Яндексе и вообще оно "наше").
В твоём ответе на вопрос ты одну и ту же задачу решаешь двумя разными инструментами, когда она может быть решена одним.
Работает ли? Работает... Правильно ли делать так? Ну такое...
Опыт и правильные решения - это прежде всего ход мышления.
Думать нужно научить, взвешивать преимущества и недостатки, дать понимание, что иногда нужно искать компромиссы, что на самом деле нет ничего идеального, и никто не знает, как правильно...
А короткий ответ новичкам не даёт ничего и порождает аргументацию решений на уровне "сделал так, потому что на Тостере так сказали". Очень здорово. И нам потом с этими людьми работать.