Канал о web-разработке. Новости IT, туториалы, веб-программирование и многое другое.
.block {
font-size: 1.2rem;
&--dark {
background: #000;
}
&__element {
text-aling: center;
&--big {
width: 100%;
}
.ie9 & {
&::before {
content: 'hello ie'
}
}
}
}
Будет скомпилирован в:
.block {
font-size: 1.2rem;
}
.block--dark {
background: #000;
}
.block__element {
text-aling: center;
}
.block__element--big {
width: 100%;
}
.ie9 .block__element::before {
content: "hello ie";
}
Когда есть такой удобный инструмент, даже речи быть не может о повторе и переопределении стилей для одного блока. Если селектор .block уже написан в каком-то документе, то в другом документе его быть не должно.
Продолжение следует...
WebDEV #советы #web<!-- TODO: change content attribute --> <meta name="apple-mobile-web-app-title" content="AMC Walking Dead"> <!-- -->Начинающие верстальщики иногда пренебрегают тем, чтобы потратить несколько минут и переработать найденное решение. Так в scss появляются вендорные префиксы, когда в сборку включен автопрефиксер, мусорные свойства и даже переопределения в рамках одного правила:
.block {
font-size: 1.2 rem;
…
font-size: 18px;
}
Про смешивание пробелов и табов, одинарных и двойных кавычек можно даже не говорить — бездумная копипаста рано или поздно принесет эти прелести в проект (кстати, чтобы поддерживать единый стиль, можно воспользоваться EditorConfig).
У авторов статей есть такой прием — вычитка, когда написанный текст перечитывают несколько раз, чтобы исправить пропущенные ошибки и перефразировать предложения, которые плохо звучат. Рекомендую активно проводить вычитку своего кода и особенно копипасты.
WebDEV #советы #web<meta name="apple-mobile-web-app-title" content="AMC Walking Dead">При этом обычный
<title> содержал совершенно другую строку.
Не важно, делаете вы редизайн или используете решение из интернета, пока копипаста не будет переработана, рядом с ней должен быть комментарий с TODO, чтобы:
— не забыть и не утащить этот кусок в продакшн,
— дать понять другим разработчикам, что это не окончательное решение,
— дать понять ревьюеру, что этот код будет изменен.
Продолжение следует...
WebDEV #советы #webfrom django import template
template.add_to_builtins('project.app.templatetags.custom_tag_module')
Если добавить это в модуль который загружается по умолчанию (settings.py,urls.py,every app models.py), у вас будут доступны все теги и фильтры из вашего кастомного модуля в любом шаблоне, без использования {% load custom_tag_module %}.
Аргументом к template.add_to_builtins() может быть путь к любому модулю; ваш кастомный модуль не обязательно должен быть привязан к какому то определенному приложению.
Например, это так же может быть модуль расположенный в корневом каталоге проекта (например: 'project.custom_tag_module').
WebDEV #советы #python #django #web