Size: a a a

2020 November 11

EG

Eugene Gromov in БЭМ
Роман
Я его сам собрал за пару часов до доклада, за основу взял bem-express и какой-то конвертер из npm из yaml в json
А в реальных проектах какие подобные инструменты используются?
источник

EG

Eugene Gromov in БЭМ
Сергей Артёмов
Желательно уходить от глобальных и "общих" стилей. Если надо стилизовать html и/или body, повесьте на них классы по БЭМу. Можно оставить в одном общем файле подключение шрифтов и кастомные свойства в :root если надо.

Желательно поменьше амперсандить. Хорошей практикой считается написание в селекторах элементов целиком как они есть, а вот модификаторы к блокам и элементам через &. Так у вас сущности (блок и его элементы) будут отдельно друг от друга в своих селекторах описываться. А их модификация прямо рядом с тем, что модифицируется. Это удобнее при рефакторинге будет (думайте о тех, кто будет читать ваш код, сейчас приходится напрягать мозг пытаясь в голове распарсить амперсанды в файле той же кнопки).

По шрифтам:
1) Неверный порядок подключения форматов. Надо от свежих к древним, ибо браузер будет грузить тот файл, какой первый поймёт. Зелёные браузеры будут в вашем варианте грузить ttf скорее всего, а может и eot (тут я не уверен).
2) Если вам нужен ие11, то он понимает woff (даже 9й понимает). TTF и тем более EOT для такого старья, в которые лучше вообще не грузить кастомные шрифты, там хоть с системными то что-то отрендерить. Ну а если не нужен ие, то вообще ограничиться woff2.
3) Используйте font-display: swap в кажой директиве @font-face

Это так, первый взгляд, может ещё что-то напишу
"Можно оставить в одном общем файле подключение шрифтов и кастомные свойства в :root если надо."

Сергей, простите, я не совсем понял, что Вы имеете ввиду под кастомными свойствами.
источник

Prikolist Начрэл... in БЭМ
Eugene Gromov
"Можно оставить в одном общем файле подключение шрифтов и кастомные свойства в :root если надо."

Сергей, простите, я не совсем понял, что Вы имеете ввиду под кастомными свойствами.
Думаю он о "css переменных". --my-var: red и var(--my-var)
источник

I

Il'yar in БЭМ
Alexey Yarrr (qfox)
По смыслу это преобразование данных из нормализованного вида во view-ориентированный. Обычно, bemtree или priv за это отвечают.
Вопрос в том, что можно в GraphQL что-то указывать, чтобы сразу это преобразование происходило? А в чем выгода?
выгода не использовать дополнительную технологию, если это можно решить GraphQL, дополнительная технология это +1 к кривой обучения.
источник

E

Evgenya in БЭМ
Eugene Gromov
Доброе утро, друзья. Если кто располагает временем и желанием, будьте добры, сделайте краткое ревью моей верстке. Правильно ли я организовал структуру приложения, именую классы, создаю блоки, от чего нужно уходить и к чему идти. Спасибо всем кто откликнется.
https://github.com/evlgromov/SPCDesign
menu__item list__item Нельзя же так делать. Может быть только один элемент, а здесь два
html lang="en" забыли поменять
источник

EG

Eugene Gromov in БЭМ
Evgenya
menu__item list__item Нельзя же так делать. Может быть только один элемент, а здесь два
html lang="en" забыли поменять
Т.е. миксовать элементы можно только с блоками, так?
источник

E

Evgenya in БЭМ
Ну да
источник

VH

Vitaly Harisov in БЭМ
Evgenya
menu__item list__item Нельзя же так делать. Может быть только один элемент, а здесь два
html lang="en" забыли поменять
Так может быть, это элемент одного блока смиксирован с элементом другого блока
источник

EG

Eugene Gromov in БЭМ
Vitaly Harisov
Так может быть, это элемент одного блока смиксирован с элементом другого блока
вот и я так думал
источник

VH

Vitaly Harisov in БЭМ
На одной дом-ноде может быть произвольное количество блоков, элементов с/без модификаторами
источник

E

Evgenya in БЭМ
А как насчет того что блоки должны быть независимыми? Тут они независимые?
источник

VH

Vitaly Harisov in БЭМ
А где вы тут видите зависимость?
источник

VH

Vitaly Harisov in БЭМ
Каждый блок общается со своими элементами в js
источник

E

Evgenya in БЭМ
Там стили смотреть надо и вообще, мне лень) Извините)
источник

СА

Сергей Артёмов... in БЭМ
Prikolist Начрэл
Думаю он о "css переменных". --my-var: red и var(--my-var)
Но ведь они же кастомные свойства, а не переменные 😭
источник

Prikolist Начрэл... in БЭМ
Сергей Артёмов
Но ведь они же кастомные свойства, а не переменные 😭
Возможно, но это популярное и лаконичное название к тому же они ведь реально изменяемы и используются через функцию var (variable)
источник

EG

Eugene Gromov in БЭМ
Prikolist Начрэл
Возможно, но это популярное и лаконичное название к тому же они ведь реально изменяемы и используются через функцию var (variable)
как это относится к моему вопросу мне не ясно)
источник

Prikolist Начрэл... in БЭМ
Eugene Gromov
как это относится к моему вопросу мне не ясно)
Я не тебе отвечал. В телеграме, имя того кому отвечают, указано в заголовке сообщения
источник

EG

Eugene Gromov in БЭМ
Prikolist Начрэл
Я не тебе отвечал. В телеграме, имя того кому отвечают, указано в заголовке сообщения
Ок
источник

Prikolist Начрэл... in БЭМ
Тут я объяснил что он имеет в виду под кастомными свойствами.
Подробности здесь https://developer.mozilla.org/en-US/docs/Web/CSS/--*
источник