Языки
Избегайте 100vh на мобильных устройствах
Единицы области просмотра в CSS звучат великолепно. Если вы хотите, чтобы элемент занимал всю высоту экрана, вы можете просто установить высоту: 100vh и вуаля - у вас есть идеальный полноэкранный элемент, размер которого изменяется при изменении области просмотра! К сожалению, это не так. 100vh ломается тонким, но фундаментальным способом в мобильных браузерах, что делает его практически бесполезным. Лучше избегать 100vh и вместо этого полагаться на javascript, чтобы установить высоты для полного просмотра.
PNG и альфаканал
Если при работе с PNG теряется прозрачный фон, становится черным, необходимо включить альфа канал. Делается это вот так:
if (function_exists('imagealphablending')) {
// Отключаем режим сопряжения цветов
imagealphablending($newImage, false);
// Включаем сохранение альфа канала
imagesavealpha($newImage, true);
}
Telegram API: бот для уведомлений
Существует множество способов отправить уведомление: почта, Skype, WhatsApp, Jabber. WhatsApp не очень люблю, поэтому сразу нет. Сначала использовал Skype, но почему-то библиотека skpy перестала отправлять прямые сообщения от пользователя к пользователю. Потом я попробовал поставить свой xmpp сервер, все работало как надо. Но мне показалось что ради сообщений слишком тяжело иметь свой сервер на java. В итоге решил добить и разобраться с Telegram.
Bootstrap 4 и datetimepicker
Столкнулся с проблемой как заставить работать Bootstrap 4 и bootstrap-datetimepicker. Последний практически не поддерживается в последнее время и ждать обновления не имело смысла. Альтернатив практически нет для bootstrap-datetimepicker. Есть конечно Tempus Dominus, но мне почему-то внешний вид не очень понравился.
Покопавшись в интернете обнаружил вот что. Всё дело в том, что Bootstrap v.4 заменила "collapse in" на "collapse show". Поэтому datetimepicker и перестал работать как раньше.
Bootstrap 4 c адаптивным размерам шрифта (RFS)
Bootstrap v4.3 представил Responsive Font Sizes (RFS), которые вы можете включить в компиляторе SCSS. Если вы компилируете CSS для своего проекта, я настоятельно рекомендую включить его.
Если вы загружаете Bootstrap из CDN или по каким-то причинам не можете сами скомпилировать SCSS — воспользоваться этими правилами RFS не получится. Есть быстрое решение — крошечный файл CSS с соответствующими скомпилированными изменениями.