Обновить
107.11

HTML *

Стандартный язык разметки web-страниц

Сначала показывать
Порог рейтинга
Уровень сложности

Мой «Умный дом» на ПЛК и с веб-интерфейсом. Часть 2. Веб-интерфейс

Время на прочтение8 мин
Количество просмотров12K

«Прелюдия»



В продолжение предыдущей истории, я расскажу о создании средства отображения информации в моей квартире (HMI, SCADA называйте как хотите).
На текущий момент я не встретил SCADA –системы, которые отвечали моим требованиям:
— клиентская часть должна работать на любой платформе, а особенно на мобильной платформе;
— бесплатность системы
— доступ к данным от ПЛК по OPC — технологии.
Итого поискав варианты SCADA (с крэком и без) я понял, что варианты в основном корявые или дорогие. Решил, что надо идти другим путем и путь этот называется «свой костыль плюс framework». Дальше я рыл гугл — Node ModBus-клиенты, самопальные PHP скрипты и т. д. И из чего что было я выбрал CSWorks. Установил, настроил, работает и вроде неплохо работает + HTML5. Лицензия распространяется «Бесплатно 999 переменных, 1 сессия» и это меня устроило. И я остановился на CSWorks.

Ниже я постарался сделать не большую инструкцию по настройке CSWorks.Наверно инженерам по промышленной автоматики, будет полезна эта инструкция, так как вы сможете сделать достаточные простые (и сложные) проекты через web интерфейс;
Читать дальше →

Оптимизация HTML5 игр для Android

Время на прочтение3 мин
Количество просмотров6.7K
Сегодня речь пойдет снова об элементе CANVAS, а так же немного об оптимизации самих игр в HTML5.

HTML часть


В современных браузерах для отрисовки в canvas используются мощи видеокарты, но, не всегда по умолчанию они включены. Можно залезть в настройки браузера и проверить. Для того, чтобы элемент вызывал такую обработку, можно в HTML добавить элементы 3D трансформации объекта. Отличным способом ускорения может (но не факт) послужить такая вот модификация канваса:

 canvas.style.WebkitTransform= 'translate3d(0,0,0)';
 ... много подобных параметров
 canvas.style.transform= 'translate3d(0,0,0)';

Читать дальше →

Рип сетевых словарей при помощи Node.js, ч. 2: динамические страницы; подключение NW.js

Время на прочтение16 мин
Количество просмотров8.4K
В предыдущей части были описаны базовые операции и сопутствующие задачи при копировании сетевых словарей при помощи Node.js. В этой части описывается использование важного дополнительного инструмента для конвертирования веб-источников особого уровня сложности.

I. Зачем нам NW.js?


1. Чем сложнее структура веб-страниц словаря, тем больше оснований опереться на весь спектр возможностей, предоставляемый отточенным браузерным движком. JSDOM — довольно развитая библиотека, но даже она не сравнится с полным набором средств из Chromium.

2. Люди, занимающиеся созданием и конвертированием цифровых словарей, — в значительной мере гуманитарии, которых волей судьбы занесло в сферу IT. Иногда им комфортнее работать с GUI, чем с интерфейсом командной строки, особенно если они не пишут утилиты сами, а пользуются готовыми разработками коллег. NW.js предоставляет простые способы создания GUI к тривиальным приложениям для анализа, обработки и конвертирования веб-страниц.

Как пример для краткого описания этого инструмента я выбрал сайт www.wordspy.com.
Читать дальше →

Как покрасить вкладку Chrome

Время на прочтение1 мин
Количество просмотров91K
image

Если вы заходили с мобильного хрома в фейсбук, то наверняка видели, что интерфейс браузера красится в фирменный синий цвет соцсети. Но зачем и как?
Читать дальше →

Как выбрать фреймворк для frontend-разработки

Время на прочтение6 мин
Количество просмотров116K
Предлагаю вашему вниманию перевод статьи How To Pick a Frontend Web Framework c сайта top.fse.guru.

Привет, приятель!

Ниже ты найдешь большой список компоновки инструментов и фреймворков. Не волнуйся! Ты можешь выбрать один, в котором точно уверен, или проигнорировать все и придумать свой вариант.

Данная статья предназначена для того, что бы помочь тебе узнать и упорядочить список инструментов которые используются в сфере frontend-разработки. А так же, это неплохой список, из которого ты можешь выбрать то, что тебе придется по душе.
Читать дальше →

Несколько неочевидных frontend-хитростей

Время на прочтение4 мин
Количество просмотров93K
Под катом вы узнаете о том, как быстро и легко оформить взаимодействие с SVG-иконками, добавить плавный скролл с помощью одного CSS-правила, анимировать появление новых элементов на странице, переносить текст на новую строку с помощью CSS и о новых способах оформления декоративной линии текста.

wg css html
Читать дальше →

Тестируем вёрстку правильно

Время на прочтение8 мин
Количество просмотров109K
Makeup — инструмент для комфортного ручного регрессионного тестирования вёрстки

Что не так с тестированием вёрстки


Мы часто им пренебрегаем. Написание функциональных, интеграционных и юнит-тестов давно стало повсеместной практикой. Вёрстке мы обычно уделяем гораздо меньше времени.

Проблема тестирования вёрстки в том, что только живой человек может сказать, хорошо свёрстан блок на странице или нет. Поэтому чаще всего мы тестируем HTML и CSS вручную: проверяем, как будет вести себя блок, если в нем будет слишком много (или слишком мало) текста или дочерних элементов; смотрим, чтобы все возможные варианты отображения блока смотрелись корректно; помним о том, как блоки должны адаптироваться к разным устройствам и разрешениям экрана.
Можем ли мы перестать делать это руками?

Динамическое связывание данных в HTML и JS

Время на прочтение3 мин
Количество просмотров19K
Всем доброго времени суток.
Если вы задаетесь одним из следующих вопросов:
  • что такое динамическое связывание данных?
  • как работает связывание данных в AngularJS или ему подобных MVVM-фреймворках?
  • чем, черт возьми, MPV отличается от MVVM?

Тогда вам под кат…
И да… в конце, как всегда, ссылка на код ;)
Читать дальше →

Все способы вертикального выравнивания в CSS

Время на прочтение6 мин
Количество просмотров840K
image

Я думаю, многие из вас, кому приходилось заниматься версткой, сталкивались с необходимостью выравнивать элементы по вертикали и знают, какие сложности возникают при выравнивании элемента по центру.

Да, для вертикального выравнивания в CSS есть специальное свойство vertical-align с множеством значений. Однако на практике оно работает совсем не так, как ожидается. Давайте попробуем в этом разобраться.

Читать дальше →

Многопользовательский онлайн-шутер на WebGL и asyncio, часть вторая

Время на прочтение17 мин
Количество просмотров24K

В этом материале постарался описать создание браузерного 3D-шутера, начиная от импорта симпатичных моделей танков на сцену и заканчивая синхронизацией игроков и ботов между собой с помощью websocket и asyncio и балансировкой их по комнатам.

Введение
1. Структура игры
2. Импорт моделей и blender
3. Подгрузка моделей в игре с babylon.js и сами модели
4. Передвижения, миникарта и звуки игры в babylon.js
5. Вебсокеты и синхронизация игры
6. Игроки и их координация
7. Балансировка игроков по комнатам и объектный питон
8. Asyncio и генерация поведения бота
9. Nginx и проксирование сокетов
10. Асинхронное кэширование через memcache
11. Послесловие и RoadMap

Всех кому интересна тема асинхронных приложений в Python3, WebGL и просто игр, прошу под кат.
Читать дальше →

Google отказывается от Flash в рекламе

Время на прочтение1 мин
Количество просмотров10K


Последние несколько лет HTML5 все больше вытесняет FLASH.

На днях Google анонсировал, что полностью откажется от показа рекламы на Flash, в пользу HTML5 в самом ближайшем времени.
Читать дальше →

MyHTML — HTML парсер на «голом» Си с поддержкой POSIX Threads

Время на прочтение3 мин
Количество просмотров32K
image

Всем привет!

Как можно было догадаться из заголовка речь пойдет о парсинге HTML (далее хтмл).

преамбула

Fallback-действия в ES6 Promise

Время на прочтение4 мин
Количество просмотров18K
Всем доброго времени суток!

Началось всё с того, что в качестве тестового задания на собеседованиях, я начал просить соискателей реализовать предзагрузчик картинок на JS. Помимо самой предзагрузки, скрипт должен был уметь подставлять fallback-картинку, если нужная картинка не могла быть загружена. Обязательным условием было — использование ES6 Promise.
Затем я подумал: «А почему бы самому не реализовать такой предзагрузчик и не выложить в общее пользование? Да это же еще и отличный повод написать статью на Хабр!».
Собственно, под катом описание логики работы такого предзагрузчика + ссылка на сам предзагрузчик.
Читать дальше →

Ближайшие события

Про использование React с элементом canvas

Время на прочтение4 мин
Количество просмотров63K
Есть такой замечательный фреймворк React, который позволяет работать с огромным и мутабельным DOM в красивом иммутабельном функциональном стиле. Это действительно круто.

Но я бы хотел рассказать про опыт использования React, который позволяет работать с мутабельной абстракцией над "иммутабельным" canvas элементом. Звучит странно, но работает отлично.

Мотивация


Я использую элемент <canvas> очень часто. Я сделал несколько достаточно сложных веб-приложений, в которых canvas — это основной элемент представления данных. Использовать canvas без всяких фреймворков и библиотек может быть действительно сложно в крупных приложениях. Поэтому я начал часто использовать фреймворки. Сейчас я поддерживаю фреймворк Konva (есть обзорная статья https://habrahabr.ru/post/250897/).

Konva помогает очень сильно, но хочется большего. Так же я начал использовать React в своих приложениях, и он мне действительно нравится. И я подумал, как же я могу использовать React для рисования графики на canvas?

React + canvas

Читать дальше →

Список технических и IT конференций 2016. Часть #1

Время на прочтение3 мин
Количество просмотров11K
image

Прошло уже почти полтора месяца 2016 года Думаю, что это время, вы точно так же, как и автор данной заметки, провели в ратных трудах. Не смотря на колоссальную загрузку, не хотелось бы, пойти путем Булата Окуджавы, и оторвавшись в очередной раз от монитора, увидеть на календаре 1е Январь 2017. Возникает закономерный вопрос — как с максимальной пользой, не только проработать, оставшиеся 10,5 месяцев года Обезьяны, но и по максимуму узнать о новейших тенденциях, попутно познакомившись с интересными людьми.

Выполняя эту задачу и было проведено небольшое исследование, посвященное самым, на мой взгляд, интересным конференциям, на которые стоит обратить внимание и, при возможности, посетить c Марта по Май 2016.
Читать дальше →

Прямая трансляция конференции Make Web, Not War из Монреаля — 5 февраля, пятница, в 17:00 (Москва)

Время на прочтение1 мин
Количество просмотров3.1K
Make Web, Not War: Live from Montreal

Всем привет! Сегодня в Монреале (Канада) наши коллеги проводят конференцию "Make Web, Not War: Live from Montreal", посвященную современным веб-стандартам, открытым решениями и открытым данным.

Начало трансляции в 17:00 по Москве. Запасайтесь попкорном и присоединяйтесь к погружению в веб-технологии.

Программа конференции

Руководство по HTML/CSS/JavaScript

Время на прочтение13 мин
Количество просмотров215K

Frontend Guidelines

Правила и руководства оформления, форматирования HTML, СSS и JavaScript кода. Его цель — повысить качество кода и облегчить совместную работу и поддержку инфраструктуры.

От переводчика

Приветствую всех снова, меня зовут Максим Иванов, и сегодня я подготовил перевод, который, возможно, окажется для вас полезным. Бенджамин Де Кук (Benjamin De Cock), разработчик из Бельгии, собрал некоторые указания по оформлению кода, которые позиционируют себя как лучшие практики по написанию HTML, CSS, JS. Конечно, существует множество рекомендаций, например, есть хороший гайдлайн от Google, наверное, есть еще что-то, однако, если следовать хотя бы некоторым из них, то можно надеяться, что ваш код станет лучше. В отдельных случаях следование этим гайдлайнам не полезно, а совсем наоборот. В общем и целом, все зависит от вашего опыта и виденья дела, если вы новичок, то скорее вам будет полезно оценить то, что пишут другие и в обществе считается верным, если вы гуру, то наверное вам и не нужны гайдлайны, которые написаны непонятно кем на ваш взгляд. Итак, приступим.
Читать дальше →

Записи с конференции Web Standards Days — Москва 2015

Время на прочтение3 мин
Количество просмотров8.6K

Иконки
Иконка кремля — Kremlin by parkjisun from the Noun Project
Логотипы WSD — github.com/web-standards-ru


В декабре мы помогали нашим друзьям из сообщества Веб-стандарты организовывать московскую конференцию серии Web Standards Days. Сегодня мы рады предложить вашему вниманию записи конференции и результаты опроса участников конференции об их предпочтениях в выборе технологий и инструментов разработки.


Открытие — Вадим Макеев (Opera)

Видео и статистика

Лучшие бесплатные коллекции векторных иконок

Время на прочтение2 мин
Количество просмотров351K
Привет, Хабр! Сегодня я хочу представить вам огромную коллекцию из 51 набора бесплатных векторных иконок. Да, есть потрясающие ресурсы Flaticon или Iconfinder, но бывают случаи, когда необходима именно группа иконок в едином стилистическом оформлении. Определиться с выбором, вам поможет эта подборка. Я старался собрать не как можно больше, а действительно самое лучшее.

Среди веб-разработчиков существует много споров о том, что лучше: иконочный шрифт или SVG спрайты? Четкого ответа на этот вопрос нет. Каждый выбирает свое. Данные наборы иконок вас неограничиывают в выборе, поскольку представлены в различных форматах: @font-face, SVG, EPS, AI, PSD, Sketch.

В целом данная подборка содержит более 10 000 иконок, охватывающих множество категорий: интерфейсы, технологии, наука, спорт, маркетинг, среда, транспорт и тд. Полые, заполненные, цветные, во Flat, Material, Elegant, Cartoon, Hand drawing стилях.

Responsive Icons (100 иконок, PSD, AI, EPS, SVG)


Responsive Icons

Читать дальше →

Пишем правильный манифест для сайта

Время на прочтение3 мин
Количество просмотров99K
Думаю, многие знают о возможности добавления иконки сайта на рабочий стол мобильного устройства. Это удобно и причины могут быть разные (нету мобильного приложения, предоставляющего туже информацию, либо вы хотите сразу открыть определенную страницу сайта и т.д.). За некоторые свойства того, как будет отображаться сайт и как будет выглядеть иконка после добавления и отвечает файл манифеста.

Манифест для сайта – это простой JSON-файл, который позволяет вам настроить следующие вещи:
1. Какая будет иконка у пользователя, после того как он добавит ваш сайт на рабочий стол
2. Как будет запускаться ваш сайт (с адресной строкой, без нее или в полноэкранном режиме)
3. Splash screen
4. Цветовую тему
5. Ориентацию экрана
6. Начальный url
и многое другое
Читать дальше →