Ответы пользователя по тегу HTML
  • Как заставить браузер сохранять пару логин-пароль, если в форме только пароль?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Добавить атрибут autocomplete="email", браузер будет подставлять адрес автоматом.
    Ответ написан
    Комментировать
  • Как захватить микрофон на Javascript (стерео)?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Вот здесь ты получаешь данные из первого канала.

    function volumeAudioProcess( event ) {
      var buf = event.inputBuffer.getChannelData(0); // канал 0 (первый канал, левый канал)


    Тебе надо точно узнать, сколько каналов доступно. См. https://developer.mozilla.org/en-US/docs/Web/API/A...

    И затем читать данные из нужного канала. Вдобавок стоит почитать про децибелы и т.д.
    Ответ написан
    Комментировать
  • Существует ли несложное решение эффекта fade out для div?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Дарю https://jsfiddle.net/18kymeax/ работает в Firefox, но не работает в других браузерах.
    Почитайте про свойства, думаю поможет написать свое решение.
    Ответ написан
    Комментировать
  • Как правильно писать приложение на Angular?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    1. Очень большие, практически любые.
    2. В верстке нужно использовать компонентный подход.

    Angular проект следует с нуля начинать на angular-cli. Советую вам сделать перерыв для изучения фреймворка, а потом писать код.
    У Angular достаточно высокий уровень входа, поэтому рекомендую изучить архитектуру и до конца разобраться как он работает.
    Ответ написан
    1 комментарий
  • Шаблоны очень старых сайтов (ретро) - где их найти?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Раньше были такие крутые редакторы как FrontPage, Macromedia HomeSite, который позже стал Dreamviewer.
    Кладези бесценной информации до сих пор присутствуют здесь citforum.ru/internet и на одном из стариннейших ресурсов рунета lib.ru/WEBMASTER
    А так даже Фейсбук есть в олд-скульном дизайне https://mbasic.facebook.com/
    И еще был классный сайт, на котором были собраны кучи палитр и скомпилированы в CHM-архив. Так и не смог его найти, наверно уже канул в лету. Где-то совсем далеко в старых архивах должен быть этот файлик с палитрами. Могу откопать, если надо.
    Ответ написан
    Комментировать
  • Как массово изменить код во множестве страниц на хостинге?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Если можно подключиться через SSH, то можно произвести автозамену с помощью sed или awk.

    awk '{gsub("one", "two", $0); print > FILENAME}' example.txt
    Ответ написан
    Комментировать
  • Можно ли вывести текст "прозрачный" для мыши или не перекрывающий слой с iframe полностью?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Совершенно неясно зачем там эта карта сверху. Логичнее ее расположить под заголовком статьи.
    Нанести название можно с помощью обычного блока текста с заданной шириной.
    <div style="position: relative">
    <iframe style="z-index: 0" src="#"></iframe>
    <div style="z-index:1;position: absolute; left: 10px; top: 40px;width: 50px;height: 16px;background-color: rgba(5,5,5,0.1)">Site Name</div>
    </div>
    Ответ написан
  • Как печатать страницу одинаково во всех браузерах?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Тут вариантов 2:
    1. Генерить нормальный PDF руками.
    2. Использовать вот такое вот https://github.com/marcbachmann/node-html-pdf
    Ответ написан
    Комментировать
  • Facebook pixel нарушает валидацию страницы - как устранить?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Noscript должен находиться внутри тела документа.

    <html itemscope itemtype="http://schema.org/WebPage" lang="ru-RU">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="profile" href="#">
    <link rel="pingback" href="#">
    <title></title>
    <link rel="author" href="#" />
    <link rel="canonical" href="#" />
    
                <!-- Facebook Pixel Code -->
                <script>
                !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
                n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
                n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
                t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
                document,'script','https://connect.facebook.net/en_US/fbevents.js');
                                    fbq('init', '501918696809596');
    
                fbq('track', 'PageView');
                </script>
                
                <!-- убрали отсюда noscript -->
                <!-- End Facebook Pixel Code -->            
    
    <!-- остальные заголовочные теги -->
    </head>
    <body>
    
    ...
    <!-- noscript должен находиться внутри тела документа --> 
    <noscript><img height="1" width="1" style="display:none"
                src="#"
                /></noscript>
    Ответ написан
    1 комментарий
  • Как открыть окно в окне в браузере?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    В таких случаях лучше использовать виджет страницы или JavaScript SDK c полной авторизацией пользователя.
    Ответ написан
    Комментировать
  • Плохо ли создавать проекты с нуля? Что значит быть про?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Я понимаю, о чем вы пишите и почему. Ваш код работает, т.к. решает поставленные задачи и удовлетворяет потребности ваших клиентов. Имеет ли он право на жизнь? Да, но только в вашем отдельно взятом случае.

    Дело в том, что ваш код не гибок, в нем отсутствует масштабируемость, его невозможно поддерживать.

    Что если вам потребуется сделать блог, в котором нужно иметь комментарии, которые обновляются в режиме реального времени? И комментарии могут содержать HTML, но такой, чтобы ваш сайт не могли взломать?
    А еще комментарии короче 2000 символов по воскресеньям платные. Оплата через Яндекс.Деньги.
    Вы все это делаете, все работает.
    Затем заказчик вам говорит, я хочу запустить такую же систему другу, но с оплатой по понедельникам через WebMoney.
    Вы копируете сайт, переписываете функцию оплаты.
    Дальше ваш заказчик видит, что у друга больше денег, он просит добавить WebMoney к себе.
    Вы опять переписываете код. Добавляете условия.
    Потом к вам приходит друг заказчика и хочет другое оформление. Вы переписываете его функции.
    Затем он просит добавить поиск по названиям записей к себе на сайт. Вы делаете. Буквально на следующий день к вам приходит заказчик и тоже просит поиск, но не только по названиями, но и по телу статей и по комментариям. Вы делаете.
    Затем ваш заказчик видит, что дела у него идут в гору и он просит отменить платные комментарии и сделать просто платные аккаунты для всех. Вы переписываете.
    Тем временем друг просит вас сделать все тоже самое, но с его оформлением.
    Дела у заказчика идут в гору и сайт начинает тормозить. Вы делаете кэширование.
    Внезапно сайт заказчика попадает в топ и нагрузка резко увеличиваете настолько, что один сервер уже не справляется. Вы переносите все на самый мощный, но он его тоже мало.
    Нужно делать горизонтальное масштабирование.
    Для этого нужно переписать все функции, которые работают с базой данных. А их уже больше двухсот. И просто замена не подходит.
    Сайт открывается через раз, заказчик звонит вам каждые 2 часа и спрашивает, как там прогресс.
    И тут вам присылает письмо друг заказчика и говорит, что хочет перейти с MySQL на PostgreSQL.
    И вы понимаете, что вам надо будет переписать еще 300 функций, но на другом сайте. Вы его посылаете, поскольку вы и так в мыле.
    Друг жалуется на вас заказчику. Заказчик, не ставя вас в известность, нанимает другого исполнителя, у которого отваливается челюсть от того, что творится в системе. Он объясняет, что ему нужно будет потратить полгода, чтобы вникнуть в то, чтобы понять ваш код, но он может сделать все тоже самое за 4 месяца, причем для заказчика и его друга так, что это будет расширяемо и поддерживаемо не только им.
    Тем временем, спустя двое суток жизни на кофеине вы героически переписываете все функции заказчика и идете отсыпаться. После суток сна вы обнаруживаете на автоответчике сообщение, что вы уволены. А все потому, что забыли проверить функцию логина.

    А теперь разберем эту историю по частям. Почему же вас уволили?

    Незнание абстракций и шаблонов проектирования привело к тому, что вы вынуждены были поддерживать 2 разных проекта с практически одинаковой логикой.
    Например ORM смог вам помочь поддерживать 2 разные базы данных без каких-либо усилий. Сменить одну базу на другую стоило бы исправления конфигурации, а не переписывания 300 функций.
    Использование фреймворков позволило бы сократить время на реализацию подключений платежных систем. Многие из них имеют готовые реализации.
    Опять же в современных фреймворках, например в той же Doctrine реализован шардинг. В большинстве случаев ваши проблемы свелись к изменению настроек.
    Но даже если бы вы накосячили, то интеграционные тесты не позволили бы попасть говну в продакшен. А если бы оно и попало, ну накосячили вы с тестами тоже, то проблема была бы обнаружена на раннем этапе благодаря "сине-зеленому" развертыванию и она бы не затронула всех пользователей.
    И да, ваш код не прошел внешний аудит.

    Чтобы быть настоящим профессионалом, нужно не только знать, но и уметь применять на практике ООП, популярные фреймворки, шаблоны проектирования, тестирование и средства непрерывной интеграции, а еще пользоваться нормальными IDE и нести ответственность за сделанную работу.

    Когда пишете свой код, почаще задавайте себе вопрос: А если бы это был код для моего кардиостимулятора? Это поможет.
    Это вам для общего развития.
    Ответ написан
    5 комментариев
  • Как реализовать такую css анимацию?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Вам нужно использовать css transform matrix().
    www.useragentman.com/matrix/#
    Ответ написан
    Комментировать
  • Делаю сайт трц и возникла проблема с интерактивным планом этажей как его реализовать?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D1%80%D...

    Самый простой и надежный способ. Работать будет везде. Генераторов подобных карт море.
    Ответ написан
    Комментировать
  • Как сделать полупрозрачный градиент поверх картинки?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Ответ написан
    Комментировать
  • Как программисту, разрабатывающему бэкэнд работать с кривой версткой?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Вот смотрю я на шаблон и не понимаю, что в нем сложного?
    Вы style="background-image: url(<?=$image?>)" для блока написать не можете?
    Или про шаблонизаторы не слышали?
    Так же вы имеете право попросить адаптировать верстку, но это выглядит пораженчески.
    Да, бэкендеру нужно в целом понимать, что делает фронтэнд, также как и фронтендер должен знать немного о бэкенде.
    Ответ написан
    Комментировать
  • Разработка сайта с использованием git. Как работать правильно?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Чтобы решить проблемы, которые у вас существуют, нужно сделать 3 вещи, но планомерно и плавно.
    1. Обучите программистов такой вещи, как git. Подождите с недельку. Затем просто прогоните их по циклу - откати эти изменения. Верните изменения. Ну раз 5, с дедлайном вчера. Все, кто не будет пользоваться git, будут мучаться часами и днями. Напомните им, как легко это делается с помощью git. Повторите испытание через некоторое время. Поставьте ультиматум: git или идите искать новую работу. Кстати, у каждого человека должен быть свой отдельный аккаунт.
    2. Держите репозитарий для проекта целиком. Сделайте отдельные папки для исходников верстки, для собранной верстки и самого сайта. Верстальщики работают со своими папками. Собирают верстку и коммятят собранную верстку в отдельную папку. Программисты через историю коммитов смогут отследить изменения и внести их назад в разработанные компоненты.
    3. Реализуйте автоматизированное развертывание проекта и запретите редактирование файлов через FTP/минуя git.

    Ну а в целом ваша проблема - низкая квалификация кадров. Решается просмотром ютуба и обучением разработчиков. Если кто-то не хочет учиться, немного снижается ставка, а деньги отдаются тем, кто учится. Даже 500 рублей будут отличным мотиватором.
    Ответ написан
    9 комментариев