Задать вопрос
  • Как найти источник загрузки сторонней рекламы в браузерах?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    Жил да был черный кот за углом...
    Баннер отображается только на сайтах с http

    Это однозначно провайдер. В саппорт тут особо без толку, они могут и не в курсе быть. Пров видит http соединение и врезается в него.
    Ответ написан
    3 комментария
  • Node SASS vs Dart SASS. Какой производительнее при каких условиях?

    @Flying
    1. dart-sass - reference implementation языка т.е. является образцом того как должен работать язык. node-sass binding libsass (реализации спецификации языка на C++) к node.js.

      dart-sass содержит в себе все последние фичи языка, к примеру там уже есть поддержка sass modules, libsass отстаёт, а node-sass отстаёт от libsass. За пруфами - сюда и сюда
    2. libsass производительнее, местами - существенно. К примеру в моих тестах интенсивная работа с sass maps в libsass примерно в 10 раз быстрее чем в dart sass. Насчёт микросекунд - у меня есть проекты которые по 15-20 секунд компилируют только стили на node-sass, на dart-sass всё намного медленнее
    3. Приведённые ссылки - сравнение тёплого с мягким. Есть реализации языков, а есть плагины для их подключения к различным сборщикам. sass - сама реализация языка, gulp-sass - binding для Gulp, sass-loader - binding для Webpack
    Ответ написан
    Комментировать
  • Как удалить все классы, кроме одного?

    0xD34F
    @0xD34F Куратор тега JavaScript
    const className = 'класс, который не надо удалять';
    
    
    // Если известно, что класс присутствует или должен быть добавлен в случае отсутствия:
    element.className = className;
    
    // Если известно, что класс отсутствует и не должен быть добавлен:
    element.className = '';
    
    // Если неизвестно, присутствует ли класс и в случае отсутствия он не должен быть добавлен:
    element.className = element.classList.contains(className) ? className : '';
    // или
    element.classList.remove(...[...element.classList].filter(n => n !== className));
    Ответ написан
    Комментировать
  • Блок закрывает видимость?

    Stalker_RED
    @Stalker_RED
    Сделайте этот прозрачный блок прозрачным и для кликов.
    pointer-events: none
    https://developer.mozilla.org/ru/docs/Web/CSS/poin...

    Ну или можно зеленый сделать родителем красного, например. А от прозрачного блока избавиться вовсе.
    Или сделать общего родителя с нулевой высотой.
    Ответ написан
    2 комментария
  • Можно ли так делать по БЭМ?

    dom1n1k
    @dom1n1k
    Нет, так плохо. Должен быть один из 3-х вариантов:
    <!-- 1 -->
    <section class="info"> 
        <div class="info__something container">
            <div class="info__wrapper"> 
    
    <!-- 2 -->
    <section class="info container"> 
        <div class="info__wrapper">  
    
    <!-- 3 -->
    <section class="info"> 
        <div class="info__wrapper container">
    Ответ написан
    2 комментария
  • Как сверстать под неизвестный размер монитора?

    https://css-tricks.com/the-difference-between-resp...
    Только по хорошему нужно миксовать отзывчивый и адаптивный дизайн
    Познакомься с относительными величинами для css (%, vh, vw, em, rem)
    Используй svg графику там где возможно вместо png
    https://developer.mozilla.org/ru/docs/Learn/HTML/M...
    https://css-tricks.com/snippets/css/a-guide-to-flexbox/
    Ответ написан
    Комментировать
  • Курс по Vue.js с тяжелым проектом?

    @Sashqa
    Не очень понимаю, каким образом "урок по разработке большого проекта" поможет Вам разобраться в проекте компании, который пишут уже больше года.

    Лучший учитель - практика. Применяйте новые знания на практике.
    От того, что вы сделаете "большой проект" под копирку по уроку, мозгов не прибавится. Придумайте что-то свое и в путь
    Ответ написан
    2 комментария
  • Как найти часть строки после "@", и вместе с @ взять в тег?

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    <?php
    
    function replaceLogic($match) {
        return "<tag>$match[0]</tag>";
    }
    
    $input = 'Вот арбуз - @ho_ho_ho какой-то текст @ho_ho_ho2';
    $output = preg_replace_callback('/@[0-9a-z_]+/u', 'replaceLogic', $input);


    Живой пример
    Ответ написан
    Комментировать
  • В чем написать программу?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    "Человеку который не шарит ничего в написании какого то ни было софта" ни в чём. Надо нанять человека, который шарит, он сможет в чём угодно.
    Ответ написан
    7 комментариев
  • Лучшие практики или скорость в вёрстке?

    @Lord_Dantes
    Сейчас изучил вёрстку

    Не изучили.

    уделять всему внимание и гордиться качеством
    Ответ написан
    Комментировать
  • Лучшие практики или скорость в вёрстке?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    слово ИЛИ тут не уместно. Есть задача и есть цель. Кому-то надо быстро, кому-то качественно, кому-то под с SEO, кому-то хорошо-богато. Поэтому главное чтобы результат отвечал ожиданиям
    Ответ написан
    Комментировать
  • Как правильно это сверстать?

    Vlad_IT
    @Vlad_IT Куратор тега Вёрстка
    Front-end разработчик
    Дополню, что поле с числом лучше делать через input, чтобы была возможно указать число вручную, а не кликать 20 раз по кнопке плюс для получения числа 20.
    Ответ написан
    Комментировать
  • Программа синхронизации папок для веб разработчика?

    Zoominger
    @Zoominger Куратор тега Веб-разработка
    System Integrator
    git
    Не осилил - не программист.
    Ответ написан
    4 комментария
  • Как проверить язык?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Пишешь в адресной строке своего браузера php только русские буквы

    Все-таки пора уже вводить в начальной школе предмет "поиск в интернете".
    Ответ написан
    Комментировать
  • Как настроить шрифт с помощью font-feature-settings?

    dom1n1k
    @dom1n1k
    Вообще говоря, это делается вот так
    font-feature-settings: lnum;
    font-variant-numeric: lining-nums;

    Но я не уверен, что ваш шрифт поддерживает маюскульные цифры. Наоборот, для Гарамона минускульные - это абсолютно родное и привычное дело.
    Судя по авторской презентации
    https://www.behance.net/gallery/28579883/Cormorant...
    нужно использовать другую версию - Infant
    https://fonts.google.com/specimen/Cormorant+Infant
    Ответ написан
    Комментировать
  • Как шифровать личные данные пользователей?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Давайте различать. Шифрование пароля - это не то же самое, что шифрование других данных. Пароль следует не шифровать, а хешировать. Это такое шифрование, которое нельзя расшифровать обратно. То есть имея хеш нельзя получить пароль, а имея пароль можно получить точно такой же хеш. Существуют для этого специальные хеш функции. Но хешировать пароли мало, их нужно сперва солить. Соль - это произвольный текст, присоединённый к паролю перед хешированием и размещаемый рядом с хешем в открытом виде. Нужна соль для того, чтобы нельзя было подбирать простые пароли по значению их хешей.
    Проверка пароля будет такой:
    1. Запрашиваем у пользователя логин и пароль.
    2. Достаём из БД по логину хеш солёного пароля.
    3. С этой солью хешируем введённый пользователем при авторизации пароль и сличаем хеши. Совпали -- значит пускаем.

    Шифрование других данных, очевидно, нужно уже обратимое, чтобы можно было расшифровать. И теперь есть два варианта: серверное и клиентское шифрование.

    Серверное не имеет смысла, поскольку скомпрометированный сервер означает утечку всего необходимого для расшифровки данных. Не скомпрометированный сервер означает, что данные и так вроде бы в безопасности. Значит шифровать не нужно (ну кроме некоторых специальных случаев).

    Клиентское шифрование - это когда сервер не имеет возможности расшифровать данные. Они шифруются на клиенте перед отправкой ключом, который не покидает пользовательского компьютера. Потом клиент снова запросит шифрованные данные с сервера и расшифрует его тоже сам. Это иногда имеет смысл. Например если вы храните keychain с паролями на сервере, но не хотите их утечки в случае взлома сервера.

    Есть ещё p2p шифрование, где с помощью специального алгоритма пользователи обмениваются ключами через сервер так, чтобы эти ключи не мог узнать ни сервер, ни кто иной. Далее от пользователя к пользователю ходит через сервер шифрованная информация, которую кроме оконечных пользователей никто не может расшифровать. Это так называемое оконечное шифрование.

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

    О, чуть не забыл. Есть опасность утечки незашифрованных данных из датацентров при наличии физического доступа к жестким дискам. Чтобы обезопасить себя в этом смысле, можно применить прозрачное шифрование файловой системы. Работающая операционная система будет знать ключ для расшифровки данных, но отсоединённый диск становится без ключа бесполезным. Однако это малоэффективно, если украдут весь сервер вместе с дисками. Зато эффективно против восстановления жуликами данных, если диск сгорел, а его сисадмин выбросил не просверлив.

    Ещё один аспект - это канал передачи. Нет смысла опасаться перехвата незашифрованных данных в канале передачи даже на последней миле провайдера клиента. Об этом заботится SSL когда правильно настроен HTTPS и сертификаты не скомпрометированы, а пользователь не подмахнул левый сертификат.

    Если вы задаёте вопрос о необходимости шифрования, значит вам ничего сверх вышесказанного шифровать не нужно. Это усложнит систему, сделает её менее надёжной, более (как ни парадоксально) уязвимой и отнимет ресурсы процессора, памяти, не даст использовать или усложнит кэширование и прочие оптимизации.
    Ответ написан
    Комментировать
  • Как в коде Python написать про включение программы?

    netpastor
    @netpastor
    Python developer
    scale_1200
    Ответ написан
    Комментировать
  • Как сделать чтобы контейнер имел высоту внутреннего тега img?

    @Lord_Dantes
    Есть несколько вариантов событий:
    1. Вылить код на кодпен
    2. Вылить код на jsfiddle
    3. Вылить код на любую другую песочницу
    Ответ написан
    Комментировать