Pull to refresh
36
0
Николай Садовников @GruZZ

Пользователь

Send message
Не согласен, это как раз первый шаг в понимании и начало освоения БЭМ как методологии. Я CSS 2 года писал в терминах БЭМ, и никому это фатальных неудобств не доставляло. А для меня и других верстальщиков было удобно разговаривать на одном языке, поддерживать вёрстку друг друга и свободно взаимодействовать.
Если разбивать файлы по блокам на файловой системе, то эта проблема становится не такой большой.
Я спокойно отношусь к использованию каскада внутри блока. Но нетерпим к межблочному каскаду, либо когда пишут каскад ради каскада (даже если вы не пишете стили по БЭМ), т.е.

.block .block__text {}

терпимо, а

.block .link {}
или
.block .block__content .block__item .block__text {}

ужасно.

Даже в первом случае у нас в будущем могут быть проблемы с этим блоком при внесении изменений, но часто проще и быстрее делать именно так.
Никому это не нравится, поэтому в bem-tools или enb html генерируется из шаблонов, а при написании стилей используются препроцессоры. Ну и идея длинных имён в том, что с одного взгляда понятно, к какому блоку принадлежит элемент или модификатор. И как сделать лучше лично я еще не придумал.
А потом можно сделать nightmare-вариант с bem-tools, grunt, автогенерацией спрайтов и т.д. и т.п.
Согласен, на первый взгляд смотрится страшно. Но привыкаешь очень быстро. Сейчас уже не нужно самому всё объяснять, можно просто дать ссылку.

Хотя разработчики до сих пор припоминают мне мои <table class="b-table">, поначалу ссаными трятапками кидались и грозились избить ногами. Потом привыкли и мы начали разговаривать в рамках одних и тех же терминов. А потом я выгнал их из моего HTML/CSS кода и начал потихоньку отжимать от JS ^_^
Спасибо, про cssrb не слышал.

Плагины нашел: grunt-borschik, grunt-cssrb. Осталось переписать Gruntfile и посмотреть разницу.

Хотя для моих задач лучше, наверное, написать свою технологию для enb или bem-tools, которая бы занималась только экспортом… Но это для меня пока что высшая лига.
imagemin не пользовался, если честно. Настроек и всяких плюшек у imgo на первый взгляд побольше: github.com/imgo/imgo/wiki/imgo-ru

Хотя надо будет найти время и сравнить их. Возможно, может быть эффективнее их совместное использование в зависимости от размеров и состава картинок.
Мне начать разбираться с GruntJS помогли 3 ссылки:



А вот список плагинов, которые я использую для вёрстки:

  • grunt-enb
    Плагин для запуска ENB. Он только для тех, у кого БЭМ головного мозга и кто не любит bem-tools.
  • grunt-favicons
    Генерирует кучу favicons из PNG. Тему раскрывает не полностью, но все равно полезный.
  • grunt-imgo
    Плагин для оптимизации картинок. Сначала требуется установить сам imgo, что само по себе является не самой тривиальной задачей. Но кому надо справится, спасибо Александру banzalik Бойченко за утилиту.
  • grunt-contrib-copy, grunt-rename, grunt-text-replace, grunt-contrib-clean
    Плагины для манипуляций с файлами, тут ничего не выбиралось, брался первый попавшийся и работающий.
  • grunt-prettify
    Плагин для причёсывания HTML. Просто для красоты, чтобы не отдавать разработчикам сжатый в одну строчку HTML.
  • grunt-cssbeautifier
    Плагин для причесывания CSS. Так же для красоты, но может применяться и для исходников. Осторожно, может сломать отступы в каком-нибудь stylus.
  • grunt-csso
    Структурная оптимизация и минификация CSS. Я использую только стуктурную оптимизацию из-за специфики своей работы.
  • grunt-csscomb
    Плагин для изначального CSScomb Славы miripiruni Олиянчука. У меня на Ubuntu работает не очень стабильно, куча php-процессов не завершаются вовремя, выжирают процессор и сильно глушат производительность системы.
    Есть уже JS-версия от Михаила mishanga Трошева, но grunt плагина под неё я не встречал.
  • grunt-autoprefixer
    Мощнейшая штукень от Андрея Iskin Ситника, сама добавляет нужные браузерные префиксы, с гибким конфигом.


Вроде бы перечислил всё. Свой Gruntfile.js не покажу, потому что он страшный и по большей части слизан с Фоторамы.
Кстати, осторожнее с Grunt, он реально очень быстро вызывает привыкание.
А ты не хочешь переехать в Москву на постоянку и работать в Яндексе в одной команде с автором поста? =)

Уже года 2 как хочу. Но не могу.

На последнем BEMup за нас обоих отдувался Вася Чернов, может быть на следующий приеду сам. Еще у меня есть безумная идея открыть отдел разработки Яндекса в Оренбурге, но это уже из области фантастики.
Идёт 4-й год моего самообучения БЭМ, хардкорного гуглинга и молчаливого перелопачивания исходников bem-проектов на github.

За это время БЭМ плотно интегрировался в CSS на всех моих проектах и в данный момент продолжаются попытки пересобрать вёрстку рабочего проекта на enb, благо начинается редизайн и сроки не давят.
Т.е. теперь и на бою будет JS в БЭМ-терминах.

Я как никто другой понимаю, что ШРИ для меня и моих целей будет очень полезна. Особенно четко это стало понятно после посещения прошлогодних Я.Субботников в Челябинске и Москве, т.к. рассказывают много интересного, но в рамках такого короткого мероприятия очень сложно успеть задать все глупые вопросы, которые копятся в голове. И ответы приходится искать самостоятельно и в свободное время.

Но у меня отягчающие семейные обстоятельства, не дающие мне возможность просто взять и понаехать в Москву, поэтому я могу только попросить по возможности «выйти из тени» и оперативно выкладывать материалы в сеть. Быть может, я бы смог делать домашние задания и участвовать в обсуждении в каких-нибудь чатиках.
Опять бороться с этим странным желанием сорваться в Москву на 2-3 месяца… Если б не жена и дети, давно бы и с удовольствием попробовал поступить в ШРИ.
Очень нравились прошлогодние лекции, которые я смотрел за завтраком по мере того как их выкладывали.
Кстати, некоторые проблемы webkit'ов можно решить с помощью нулевого svg-шрифта и подключать его как font:0/0 'null', a;.

Пример самого шрифта:
7days.ru/bitrix/templates/7dn-main/css/fonts/w-webfont.svg
@font-face {
	font-family: "null";
	font-style: normal;
	font-weight: 400;
	src: url('fonts/w-webfont.svg#null') format("svg");
}


Но это, к сожалению, просто еще один не самый лучший вариант решения проблемы.
Возможно, я зря это сюда пишу, т.к. сам противник очистки потока через overflow:hidden;, но с помощью дополнительной обёртки проблема решаема: jsfiddle.net/GruZZ/bXbe5/1/
Уважаемый kizu давно еще игрался с полигонами на CSS3: kizu.ru/fun/polygons/
Дело хорошее, но я как-то раз нашел ресурс post-tracker.ru и до сих пор пользуюсь.
Спасибо, поностальгировал. Книжку Дубакова вспомнил, свои первые шаги в вёрстке…
Для меня пока что приложение бесполезная игрушка. Баланс не обновляется, сколько устройство не перезагружай, мой регион еще недоступен. Потенциально интересное приложение, поэтому пока что не удаляю. А, ну и странно, что мне из Google Play не дал установить, только в обход.

P.S. Nexus 4, Android 4.2.2
Мне тут посоветовали theoldreader.com. На первый взгляд почти что тот самый, тёплый ламповый, социальный.
Никому ничего не хотел доказывать. Я просто хотел сказать, что создатели БЭМ — очень неглупые люди с огромным опытом, решающие самые разнообразные по сложности и необычности задачи. Создание интерфейсов нуждается в системном подходе и команда БЭМ просто предлагает свой.
А нужна ли неграм такая методология или нет — решать только неграм вам, и не нужно говорить что БЭМ не нужен никому.

Information

Rating
Does not participate
Location
Оренбург, Оренбургская обл., Россия
Date of birth
Registered
Activity