JavaScript: переменная без директивы
Читать
Давайте разберемся, что получится, если присвоить переменной значение, забыв предварительно ёё объявить с помощью одной из директив:
Например:
Если оздается пустой объект в глобальном объекте. интерпретатор JS видит:
Чтобы избежать такого поведения нужно использовать "use strict". Эта запись поможет быть уверенным в том, что переменная была определена перед тем как ей присвоили значение.
#interview #frontend #js
Читать
Давайте разберемся, что получится, если присвоить переменной значение, забыв предварительно ёё объявить с помощью одной из директив:
let, var или const?Например:
myObject = {};
console.log(myObject);
Если оздается пустой объект в глобальном объекте. интерпретатор JS видит:
global.myObject = {} // в Node.js
window.myObject = {} // в браузерах
frames.myObject = {} // в браузерах
self.myObject = {} // в браузерах
self.myObject = {} // в веб-воркерах
globalThis.myObject = {} // во всех окружениях
{} // пустой объект в консоли
Чтобы избежать такого поведения нужно использовать "use strict". Эта запись поможет быть уверенным в том, что переменная была определена перед тем как ей присвоили значение.
#interview #frontend #js
🔥3💯2👍1🎉1
HTML: translate
Читать
Атрибут
Хотя не все браузеры распознают атрибут
#frontend #html
Читать
Атрибут
translate используется для того, чтобы сообщить браузеру, следует ли переводить контент или нет.<footer>
<small>© 2024 <span translate="no">MyBrand</span></small>
</footer>
Хотя не все браузеры распознают атрибут
translate, он автоматическими определяется различными системами перевода, такими как Google Translate, а также прикладными инстурментами, используемыми людьми-переводчиками. Поэтому важно указывать этот атрибут со значением no для обозначения контента, который не следует переводить.#frontend #html
dr.Brain
HTML: translate
управляем переводом контента с помощью HTML
👍5🎉2🆒1
UI/UX дизайн: цветовые схемы
Читать
Руководство по цветовым паттернам в UI/UX-дизайне: методы и лучшие практики...
#design
Читать
Руководство по цветовым паттернам в UI/UX-дизайне: методы и лучшие практики...
#design
dr.Brain
UI/UX дизайн: цветовые схемы
разбираемся, как использовать цветовые схемы для UI/UX дизайна
👍6💯2🆒1
Tailwind: адаптивный дизайн
Читать
В этой статье мы рассмотрим, как Tailwind CSS позволяет быстро создавать адаптивную верстку с помощью встроенного набора утилит.
Tailwind дает разработчику простой и эффективный способ адаптации дизайна к экранам различных размеров, позволяя создавать макеты без использования специальных медиа-запросов...
#frontend #css #tailwind
Читать
В этой статье мы рассмотрим, как Tailwind CSS позволяет быстро создавать адаптивную верстку с помощью встроенного набора утилит.
Tailwind дает разработчику простой и эффективный способ адаптации дизайна к экранам различных размеров, позволяя создавать макеты без использования специальных медиа-запросов...
#frontend #css #tailwind
dr.Brain
Tailwind: адаптивный дизайн
разбираемся с адаптивной вёрсткой в Tailwind CSS
👍3🔥2💯2🆒2
JavaScript: пустой массив
Читать
Давайте сравним в JavaScript пустой массив
Думаете, что в результате будет
Обратимся к логике языка программирования.
1. Начнем с того, что JavaScript является слабо типизированным языком программирования и не требует явного указания типа данных для переменной.
2. Также не будем забывать, что оператор логического отрицания
3. Наконец, запомним, что пустой массив
Обогатившись знаниями, вернемся к нестрогому сравнению пустого массива и его противоположности:
1. Выражение
2. Оператор
3. Очевидно, что сравнение двух
Результат:
#interview #frontend #js
Читать
Давайте сравним в JavaScript пустой массив
[] с его логическим антиподом ![].console.log([] == ![])
Думаете, что в результате будет
false?Обратимся к логике языка программирования.
1. Начнем с того, что JavaScript является слабо типизированным языком программирования и не требует явного указания типа данных для переменной.
2. Также не будем забывать, что оператор логического отрицания
! меняет значение операнда с истины на ложь и наоборот.3. Наконец, запомним, что пустой массив
[] является истинноподобным (truthy) значением.Обогатившись знаниями, вернемся к нестрогому сравнению пустого массива и его противоположности:
1. Выражение
![] соответствует !true и вернет false.2. Оператор
== при сравнении приводит операнды к числам, а значит false соответствует 0, и [] тоже равен 0.3. Очевидно, что сравнение двух
0 дает true Результат:
true#interview #frontend #js
dr.Brain
JavaScript: пустой массив
почему сравнение пустых массивов в JavaScript дает неожиданный результат
🔥3👍2🆒2🤔1💯1
Tailwind: персонализация
Читать
Порой наступает время, когда Tailwind CSS необходимо персонализировать в соответствии с требованиями проекта. Tailwind CSS является очень гибким продуктом, возможности которого не ограничиваются только настройками по умолчанию, и это позволяет создавать полностью управляемые системы дизайна...
#frontend #css #tailwind
Читать
Порой наступает время, когда Tailwind CSS необходимо персонализировать в соответствии с требованиями проекта. Tailwind CSS является очень гибким продуктом, возможности которого не ограничиваются только настройками по умолчанию, и это позволяет создавать полностью управляемые системы дизайна...
#frontend #css #tailwind
dr.Brain
Tailwind: персонализация
разбираемся с персональными настройками Tailwind CSS
👍3💯2🆒2🔥1
HTML: poster
Читать
Атрибут
Если атрибут
#frontend #html
Читать
Атрибут
poster используется для того, чтобы демонстрировать пользователю заставку, пока загружается видео или пока пользователь не запустит воспроизведение.<video src="videofile.ogg" autoplay poster="posterimage.jpg">
Если атрибут
poster отсутствует или его значение не указано, ничего не отображается до тех пор, пока не будет доступен первый кадр загружаемого видеоматериала. После того как первый кадр видеоконтента загрузится, он будет отображаться, как рамка постера.#frontend #html
dr.Brain
HTML: poster
выводим заставку для загружаемого видео с помощью HTML
👍5🦄2🔥1🎉1
HTML: noscript
Читать
HTML-элемент noscript определяет ту часть кода страницы, которая будет выполняться, когда в браузере пользователя отсутствует JavaScript или отключена его поддержка.
<noscript><h2>JavaScript is disabled in your browser.</h2></noscript>
Таким образом noscript обеспечивает резервный механизм для компонентов, которые не работают без JavaScript.
#frontend #html
Читать
HTML-элемент noscript определяет ту часть кода страницы, которая будет выполняться, когда в браузере пользователя отсутствует JavaScript или отключена его поддержка.
<noscript><h2>JavaScript is disabled in your browser.</h2></noscript>
<noscript><h2>JavaScript is disabled in your browser.</h2></noscript>
Таким образом noscript обеспечивает резервный механизм для компонентов, которые не работают без JavaScript.
#frontend #html
dr.Brain
HTML: noscript
определяем код HTML, который будет выполняться при выключенном Javascript
👍2🔥2🆒2
Homebrew: обзор
Читать
Homebrew — это пакетный менеджер для MacOS, который позволяет устанавливать программы и утилиты командной строки.
В этой статье мы рассмотрим для чего нужен Homebrew и его альтернативы, поговорим о том, сколько времени потребуется для установки этого пакетного менеджера, изучим терминологию Homebrew и, наконец, коснёмся информации, отсутствующей на официальном сайте Homebrew...
#dev #tutorial
Читать
Homebrew — это пакетный менеджер для MacOS, который позволяет устанавливать программы и утилиты командной строки.
В этой статье мы рассмотрим для чего нужен Homebrew и его альтернативы, поговорим о том, сколько времени потребуется для установки этого пакетного менеджера, изучим терминологию Homebrew и, наконец, коснёмся информации, отсутствующей на официальном сайте Homebrew...
#dev #tutorial
dr.Brain
Homebrew: обзор
для чего нужен пакетный менеджер Homebrew для MacOS
👍5💯3🆒2🔥1
HTML: theme-color
Читать
При посещении некоторых популярных сайтов с мобильных устройств строка меню в Chrome волшебным образом меняет свой цвет, чтобы соответствовать основному цвету пользовательского интерфейса.
Это не магия: такого эфффекта можно добиться с помощью атрибута
Так всего одна строка может помочь пользователям значительно повысить лояльность к Вашему ресурсу. Дело в том, что такое решение добавляет сайту профессиональной эстетики. Создаётся ощущение, что разработчики потратили на дизайн и верстку больше времени и других ресурсов.
#frontend #html
Читать
При посещении некоторых популярных сайтов с мобильных устройств строка меню в Chrome волшебным образом меняет свой цвет, чтобы соответствовать основному цвету пользовательского интерфейса.
Это не магия: такого эфффекта можно добиться с помощью атрибута
name="theme-color" HTML-элемента meta из раздела head. Именно этот атрибут предлагает браузеру использовать укзанный цвет вместо предустановленного.<meta name="theme-color" content="#4285f4">
Так всего одна строка может помочь пользователям значительно повысить лояльность к Вашему ресурсу. Дело в том, что такое решение добавляет сайту профессиональной эстетики. Создаётся ощущение, что разработчики потратили на дизайн и верстку больше времени и других ресурсов.
#frontend #html
dr.Brain
HTML: theme-color
приводим цвета в соответствие с пользоватеьским интерфейсом с помощью HTML
👍6🔥4👏2🆒1
Homebrew: терминология
Читать
Работая с Homebrew можно либо полюбить, либо возненавидить "пивную" терминологию этого пакетного менеджера. В любом случае погрузиться в пивную экосистему придётся...
#dev #tutorial #homebrew
Читать
Работая с Homebrew можно либо полюбить, либо возненавидить "пивную" терминологию этого пакетного менеджера. В любом случае погрузиться в пивную экосистему придётся...
#dev #tutorial #homebrew
dr.Brain
Homebrew: терминология
изучаем термины пакетного менеджера Homebrew для MacOS
👍4🔥4🆒2
HTML: output
Читать
С помощью элемента
кроме того, результат автоматически обновляется при изменении входных значений.
#frontend #html
Читать
С помощью элемента
output можно выводить результат выполнения скрипта:<form oninput="r.value=parseInt(a.value)+parseInt(b.value)+parseInt(c.value)">
<input type="number" id="a" value="100">
+<input type="number" id="b" value="50">
+<input type="number" id="c" value="50">
=<output name="r" for="a b c"></output>
</form>
кроме того, результат автоматически обновляется при изменении входных значений.
#frontend #html
dr.Brain
HTML: output
выводим результаты вычислений с помощью HTML
👍3🔥3💯2🆒2👎1
Tailwind: темный режим
Читать
Давайте рассмотрим, как реализовать в Tailwind CSS темный режим (dark mode). Темный режим на протяжении уже многих лет сохраняет свою актуальность и популярность, так как действительно обеспечивает комфортные условия работы пользователей с контентом в условиях слабого освещения, уменьшая дискомфорт и снижая нагрузку на глаза.
Для создания и поддержки темного режима в Tailwind предусмотрены встроенные утилиты...
#frontend #css #tailwind
Читать
Давайте рассмотрим, как реализовать в Tailwind CSS темный режим (dark mode). Темный режим на протяжении уже многих лет сохраняет свою актуальность и популярность, так как действительно обеспечивает комфортные условия работы пользователей с контентом в условиях слабого освещения, уменьшая дискомфорт и снижая нагрузку на глаза.
Для создания и поддержки темного режима в Tailwind предусмотрены встроенные утилиты...
#frontend #css #tailwind
dr.Brain
Tailwind: темный режим
включаем dark mode с помощью Tailwind CSS
💯4🔥3🦄2👍1👏1
CSS: управлением фоном элемента
Читать
Свойство
Технику создания нового контекста наложения можно использовать для создания эффекта наведения, при котором меняется фон кнопки:
Так при наведении будет изменяться фон элемента
#frontend #css
Читать
Свойство
z-index позиционирует элементы по оси Z, то есть определяет, в какой последовательности происходит наложение элементов. Так, иногда для дочернего элемента можно установить значение свойства z-index меньше чем для родительского, в результате дочерний элемент скроется за родительским элементом. Избежать такого эффекта позволяет создание нового контекста наложения (stacking context) для родительского элемента. Сделать это можно, например, добавив родителю CSS-свойство isolation: isolate.Технику создания нового контекста наложения можно использовать для создания эффекта наведения, при котором меняется фон кнопки:
button.join-now {
cursor: pointer;
border: none;
outline: none;
padding: 10px 15px;
position: relative;
background-color: #5dbea3;
isolation: isolate; /* без этого свойство дочерний элемент скроется за родительским */
}
button.join-now::before {
content: "";
position: absolute;
background-color: #33b249;
top: 0;
left: 100%;
right: 0;
bottom: 0;
transition: left 500ms ease-out;
z-index: -1;
}
button.join-now:hover::before {
left: 0;
}
Так при наведении будет изменяться фон элемента
button, не мешая тексту на переднем плане.#frontend #css
dr.Brain
CSS: управлением фоном элемента
разбираемся с контекстом наложения для изменения свойств элементов в CSS
👍7🔥2💯2
Xcode: обзор
Читать
Сразу замечу, что в большинстве случаев для эффективной работы не нужно устанавливать весь пакет Xcode. Для создания программного обеспечения на Mac достаточно иметь в своем распоряжении Xcode Command Line Tools.
А теперь по порядку...
#dev #xcode #macos
Читать
Сразу замечу, что в большинстве случаев для эффективной работы не нужно устанавливать весь пакет Xcode. Для создания программного обеспечения на Mac достаточно иметь в своем распоряжении Xcode Command Line Tools.
А теперь по порядку...
#dev #xcode #macos
dr.Brain
Xcode: обзор
изучаем для чего нужын инструменты командной строки Xcode
🆒7🔥2👍1
CSS: кнопка в форме таблетки
Читать
Сделать кнопку в форме таблетки или пилюли (кнопку со скругленными краями) можно, установив элементу
Не стоит забывать, что высота кнопки может увеличиваться при изменении дизайна. Поэтому, в большинсте случаев, для разработчика будет удобно устанавливать
#frontend #css
Читать
Сделать кнопку в форме таблетки или пилюли (кнопку со скругленными краями) можно, установив элементу
button очень большое значение для свойства border-radius, которое, несомненно, должно быть больше высоты кнопки:button.btn {
border-radius: 80px; /* значение должно значительно превышать высоту кнопки */
padding: 20px 30px;
background-color: #fdd835;
border: none;
color: black;
font-size: 20px;
}
Не стоит забывать, что высота кнопки может увеличиваться при изменении дизайна. Поэтому, в большинсте случаев, для разработчика будет удобно устанавливать
border-radius с очень большим значением, чтобы ваш CSS-эффект продолжал работать независимо от того, насколько увеличится высота кнопки.#frontend #css
dr.Brain
CSS: кнопка в форме таблетки
делаем кнопку с закругленными краями с помощью CSS
🔥5🆒2👍1
CSS: текст с многоточием
Читать
Как обрезать текст выходящий за пределы контейнера с добавлением многоточия
Для того, чтобы результат соответствовал ожиданиям, должны быть соблюдены следующие правила:
1. для элемента с текстом указывается явная ширина
2. чтобы предотвратить автоматический перенос текста на следующую строку нужно указать свойство
3. текст, выходящий за пределы блока нужно обрезать
4. конец обрезанной строки дополняется многоточием
#frontend #css
Читать
Как обрезать текст выходящий за пределы контейнера с добавлением многоточия
...? Такой метод давно используется для достижения визуальной эстетики и повышения лояльности пользователей при просмотре текста, не умещающегося в пределах выделенного для него блока:p.intro {
width: 300px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
Для того, чтобы результат соответствовал ожиданиям, должны быть соблюдены следующие правила:
1. для элемента с текстом указывается явная ширина
width,2. чтобы предотвратить автоматический перенос текста на следующую строку нужно указать свойство
white-space: nowrap;,3. текст, выходящий за пределы блока нужно обрезать
overflow: hidden;,4. конец обрезанной строки дополняется многоточием
text-overflow: ellipsis;.#frontend #css
dr.Brain
CSS: текст с многоточием
обрезаем текст и добавляем многоточие с помощью CSS
🔥5👍3💯2
Homebrew: установка Xcode CLT
Читать
Самый простой способ получить на рабочем месте Xcode Command Line Tools — это установить Homebrew, популярный менеджер пакетов для macOS. С Homebrew можно установить практически любой инструмент разработчика с открытым исходным кодом. Поскольку, с высокой степенью вероятности, Homebrew очень сильно пригодится в локальной среде разработки, будет разумным шагом установить Homebrew, а вместе с ним и Xcode Command Line Tools...
#dev #tutorial #macos
Читать
Самый простой способ получить на рабочем месте Xcode Command Line Tools — это установить Homebrew, популярный менеджер пакетов для macOS. С Homebrew можно установить практически любой инструмент разработчика с открытым исходным кодом. Поскольку, с высокой степенью вероятности, Homebrew очень сильно пригодится в локальной среде разработки, будет разумным шагом установить Homebrew, а вместе с ним и Xcode Command Line Tools...
#dev #tutorial #macos
dr.Brain
Homebrew: установка Xcode CLT
установка инструментов командной строки Xcode с помощью Homebrew
👍3🔥2🆒2💯1
CSS: лимит строк
Читать
Свойство
Для того, чтобы результат соответствовал ожиданиям, должны быть соблюдены следующие правила:
1. свойство
2. значение свойства
3.
#frontend #css
Читать
Свойство
-webkit-line-clamp позволяет ограничить содержимое блока указанным количеством строк:p.intro {
width: 300px;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3; /* обрезаем, если количество строк больше 3 */
overflow: hidden;
}
Для того, чтобы результат соответствовал ожиданиям, должны быть соблюдены следующие правила:
1. свойство
display имеет значение -webkit-box или -webkit-inline-box,2. значение свойства
-webkit-box-orient соответствует vertical3.
overflow содержит значение hidden#frontend #css
dr.Brain
CSS: лимит строк
сокращаем количество строк с помощью CSS
🔥6🆒3👍1
HTML: множественный ввод
Читать
Для HTML-элемента
Если для атрибута
#frontend #html
Читать
Для HTML-элемента
input можно использовать атрибут multiple, чтобы указать несколько значений для файлов и адресов электронной почты. Возможно такой подход не является привычным для пользователей, но он работает:<input type="email" placeholder="Email (список, через запятую)" multiple>
Если для атрибута
type не задано значение email или file, возможность множественного ввода значений даже при указанном multiple игнорируется.#frontend #html
dr.Brain
HTML: множественный ввод
заполняем поле ввода значениями через запятую
👍4🔥3🆒2
Xcode: xcode-select
Читать
Рассмотрим, как установить Xcode CLT (Xcode Command Line Tools) напрямую, не прибегая к установке полного пакета XCode или Homebrew...
#dev #tutorial #xcode
Читать
Рассмотрим, как установить Xcode CLT (Xcode Command Line Tools) напрямую, не прибегая к установке полного пакета XCode или Homebrew...
#dev #tutorial #xcode
dr.Brain
Xcode: xcode-select
устанавливаем инструменты командной строки с помощью xcode-select
🔥4👍2🆒2👏1💯1