Александр Ламков — Friendly Frontend это авторский канал, который предоставляет полезные материалы по фронтенду. Ведущий канала делится своими знаниями и опытом в разработке веб-интерфейсов, используя простые и понятные слова, чтобы помочь новичкам и опытным специалистам. Здесь вы найдете самые актуальные новости из мира фронтенд разработки, а также ссылки на социальные сети, где вы можете получить дополнительную информацию и общаться с коммьюнити. Присоединяйтесь к чату нашего коммьюнити по ссылке: https://t.me/friendlyFrontendChat и подписывайтесь на YouTube канал, чтобы не пропускать новые видео: https://www.youtube.com/@AleksanderLamkov
21 Nov, 11:00
20 Nov, 15:01
19 Nov, 06:00
18 Nov, 05:55
17 Nov, 15:01
15 Nov, 06:03
13 Nov, 15:05
12 Nov, 06:00
cursor pointer
' для <button>
всё-таки нужен. <a>
или <button>
— определяется по логике, выполняемой при взаимодействии с элементом. Если клик стриггерит переход на другую страницу (то есть браузер отдаст новую html-страницу и по итогу обновится URL в адресной строке браузера), то элемент делается ссылкой, а если в результате клика выполняется действие в рамках текущей страницы (и НЕ обновляется URL-адрес), то элемент делается кнопкой. А теперь ещё вспомним, что мы живём в эпоху SPA, где обновление URL-адреса — фикция и лишь триггер для JS-роутера, чтобы перерисовать часть DOM-дерева и предоставить пользователю "новую страницу".hover
и focus-visible
для интерактивных элементов — они сделают интерфейс куда более понятным пользователю, чем простое изменение cursor
. 10 Nov, 15:02
08 Nov, 06:03
06 Nov, 15:01
06 Nov, 10:35
var(--color-text)
, если можно юзать "удобные" Sass-переменные а-ля $color-text
. $color-text
, всё это будет заменено на конкретное значение цвета, прописанное в исходном коде. А работать с переменными стилей в рантайме — необходимость (пример покажу в конце).--color-text
в рамках селектора .box {}
, все DOM-элементы, находящиеся внутри элемента с классом box
, будут иметь доступ к CSS-переменной --color-text
.$color-text
в рамках селектора .box {}
, будет доступна только в рамках конкретного селектора и во всех его вложенных селекторах.
<button class="button">
<span class="button__label">Клик</button>
</button>
.button {
$color-text: red;
&__label {
color: $color-text;
}
}
.button {
$color-text: red;
}
.button__label {
color: $color-text;
}
:root {}
объявляется набор CSS-переменных а-ля color-text
и color-bg
, которые затем повсеместно используются в свойствах color
и background-color
. При нажатии на кнопочку смены темы, через JS добавляется условный класс is-dark-theme
корневому элементу DOM-дерева <html>
. Затем в CSS-коде подвязываются на этот класс в селекторе :root.is-dark-theme {}
, в рамках которого меняют значения CSS-переменных color-text
и color-bg
. Использовать Sass-переменные таким же образом уже бы не получилось.$color-text
и $border-radius
для браузера это уже #ff3636
и 24.5px
, и он знать не знает о том, как всё выглядело в вашем исходном коде.$variable
для Sass-миксинов, функций и циклов, а --variable
и var(--variable)
— для всего остального, что важно сохранить в CSS. 03 Nov, 15:01
01 Nov, 06:04
30 Oct, 15:03
27 Oct, 15:11
25 Oct, 06:02
24 Oct, 15:52
23 Oct, 15:00
22 Oct, 06:12
21 Oct, 15:01
20 Oct, 18:06
18 Oct, 06:15
17 Oct, 15:28
16 Oct, 15:03
15 Oct, 06:02
13 Oct, 15:08
11 Oct, 22:41
11 Oct, 06:03