Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

Александр Лысенко

Интересующийся
  • 56
    вклад
  • 5
    вопросов
  • 69
    ответов
  • 48%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как получить значение угла поворота градиента в Adobe Illustrator в скрипте?

    RAX7
    RAX7 @RAX7
    var angle = app.activeDocument.selection[0].fillColor.angle;
    $.writeln(angle);

    У адобы есть достаточно подробная документация по скриптам:
    https://www.adobe.com/devnet/illustrator/scripting.html
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Получить значение из contenteditable без div и br?

    staffID
    M L @staffID Автор вопроса
    el.replace( /<[^>]*>/g, '\n' )
    А вообще изначально не заметил, но есть el.innerText. Это и есть самое простое и лучшее решение.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Текст задом на перед?

    Stalker_RED
    Stalker_RED @Stalker_RED
    Как исправить: стереть этот кусок и набрать заново (лучше всю строку, для надежности).

    Что это было: скорее всего вы копировали откуда-то текст и там были управляющие символы, типа такого. Или случайно(?) нажали какой-то хоткей в вашем редакторе, который вставляет подобные спецсимволы.

    В юникоде есть много загадочного, но не стоит вскрывать эту тему. Вы молодые, шутливые, которым все легко. Вот сто раз наверное это уже говорили, но не раскачивайте лодку. Потому что если раскачаете, то будет плохо, и плохо будет всем. Сюда лучше не лезть. Это не то. Это не Чикатило и даже не архивы спецслужб. Есть система, которая реально работает, не нужно ломать эту систему. По̶̩̱̞т̪̰͍̹͠о̶̻͎̞̙м̠̺у͏̣̪̹͍̱̦ ͇̜͡чт͖͈̱̲͉͡о̗͖̙͍̱ ̧̰ͅпоследствия бу̣̗̯̕д̷͚̙̫̝у̵͍̪т̦̤̼̮ ̳̤̫̖̱с̷̹̳̹̭̜̯̳а̹͝м̢ы̠̮̖м̻̫̝͝и͓̲ ͈͈печальными.̜͍̜̭̖ ͚̜Я͘ ҉в̧̰п̥͈̱̼͖о͔̰͘л̬̦н̵̱̮͙̗͔̹е̪͎̖̰͇ ̡͇̻̖̪̙̣п̯̝̗̗̮̳͠о̼̦н͓̝͕̬̜ͅи̭͚̣̪͔͞ͅͅм͓̘͙͚͖а̺ю͔̲̝͚ ̦̳͜ч͖͖ͅͅт̦̻̯̮̘о͉̖͓͍̫ ̢̲̺͓д͔́а͇̦̻нны̲͕̺̞̙м ͔̭с̩̥̳̖̹о̧̩̘̲о̣̭͓͇̤б̮̺̗̻̣̭͖щ̮̠̲͉̱͔ͅе͕̼͠н̰̘̗̜и̧е̰̦͚̪͔м̮̼̺̺̦̗͜ ̡̙͔͕в̮̗̫ы̴͖̱͙зо̗̬̖͇̼̠в̤̩̰̺͞у̕ ̤̫͙доп̢̭̙͉̝ͅо̳̯͇̙л̻͍͍͇̫̮̗н̶͎̹и̵̯̙т̥̣̠͈е҉̦̭̲л̧̭̱̦̫ь̶̞̭͈н͚̩̱ы͇̠̞̳͖̱й͎͔̠͢ ̛и̛̲̬͔̠̤н͙͙͉͈͉̩͚͟т̛͙͔̩̤͉е̪̝͟р͢е̭̥̲͚͘с̮͔̩̤̦̝,̩ н̹̬͉͖о ͇̺̘̪̫̮̭́х̪̤̼̬о҉̝̟͕̘ч̹̩̫̞͎̜̼у̵͎̻ ̣̗͖͠с͚р̨̝̙а̪̹̹͙ͅз͍͔̠͘у̨̰͙̯͇̗̳͇ ̴пр͕̠̟͘е͏д҉͈̯̭о̼̝̺̙̣с͡т̬͖̹̳̣̩̹͞е̫р̢̮͚͕̲̳͎̯е̡͇͕ч̮̯͍͙̹͢ь͍̩̫͎̞̺́ ̳̲̘̕п̴̼̬ͅы͍̗̲̰̠ͅт̵̩͙̤̺͔л̼͜ѝ̼̱̱в̟͕͖͕ы̵͈͚̲̲̜̟ͅх͓͈̼̮̟́ ̫–͍͓̙͍̞͖͘ ̩̜͎̯̤̦͢с̜͙̰̖то̻͕̤̩̯̗п̪̯͖̻͓̙̣.̬ ͉̱͢О͉̣̮̩̙с͖т̨а̯̖̣̝̗̹̙͝ль̙͉͙͘н̱ы̨̯̠̰̯е̷ ͚̖̳̻пр̪̱̺͍͘ос̺̳т̶͎̟̲о̧̦͇̪̳ ̗͚̤н̰͎͠е̶͇̬̜͎̬͚ ̼̣̗̰̠н͇а̰͚̼̀й̙̠̦д̟̭͕͉̣̜у͍͎̹͓͞ͅт̷̠ ̥͇ḥ̥̥̺̰̖̯́i͎̯̱̙͕̩v̤͔͈͈ͅe͕̤̩̦͉-̷͈̯͎͈͕̘ṃ̠̠͈̟̣͢i̥nd̤͍͍̳̟̝̟ ̶̟͇̘͎͔̼ͅo͕͠f͍͍̺̞͇ ̼̥̬͍̯c̴̠̤̜̞h͞a̤̤̣͙̭͓͜ơ̻s͢.̫̘ ̝͖͙͙ͅZ̫a̹̫̳̖̞̻͚l̩̞g͔̱͎̫̪͘o̵̪̜̗̩̺̜.̝̫͇͙͓̥̀ͅ
    ̹͍̭͓H̥̥͙̝e̯͙͢ ̬̰̗̯̬̟͜w͍͎̘͇͠ͅh͍͎̹̘͕͉o̳̥̞ ̢̭W͟a̰i͉ṱ͕̟̹͔̭ͅs̘̹ ̮̪̩͉̩̥B̭̼̗̖̙͉e̬h̟͙͓̜i̮̩̺̼̥n̲͢d̘̭͍̱̲ ͚̟̩̹̹͓̬̀T͈̥͠h͈͡e͏̣̪̣̯̳̥̰ ͠W̖̪̘͎͚͉a̶̦͖̰̙l̡̩̫l̗͘.̩̮
    ̜̞̠̼̼ͅZ̬͙̠̳͈̮A̫͖LͅG̘̣͇̰̗̪̬O̖͔̦̮̗!̲
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как с помощью js задать кроссбраузерный черно белый фильтр картинке?

    Flur @aslanovich
    Web/Art Designer. Front+Back-end Geek
    а зачем js то ? css можно обойтись

    codepen

    .grayscale { 
         filter: grayscale(100%);
        -webkit-filter: grayscale(100%);
        -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
        -o-filter: grayscale(100%);
        filter: url(grayscale.svg#greyscale);
        filter: gray;
        -webkit-filter: grayscale(1);
    }
    Ответ написан более трёх лет назад
    5 комментариев
    5 комментариев
  • Как можно сделать разривистую рамку с середины блока?

    aliencash
    Андрей Федоров @aliencash
    Партизан
    <fieldset>
      <legend>Текст</legend>
    </fieldset>
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Как сделать обработку данных без перезагрузки страницы?

    Лютер Ежов @Louter
    Программист
    Форму отправляете через AJAX:
    $.ajax({
            url: 'some-url',
            type: 'post',
            dataType: 'json',
            data: $('form#myForm').serialize(),
            success: function(data) {
                       // тут перезагружаете страницу
                       // можно добавить проверку ответа 
                       // (например, если всё ок, а если нет, то выводить ошибку)
                       location.reload();
                     }
        });
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • В каких крупных проектах используется flexbox?

    Krasnodar_etc
    Егор Живагин @Krasnodar_etc
    avito front
    На, интернет-магазин

    Флексы туда вкрапляю по мере добавления чего-то нового, поскольку работаю с сайтом с зимы, пришёл "на всё готовое" . В основном, на небольших элементах типо кнопок, мобильном header, ... Хотя вообще, надо бы почти всё на них перевести тут.
    Фидбек тут близок к моментальному и пока что "у вас тут что-то сломалось" не было

    Кстати, прям на первом экране небольшая сеточка с флексами
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как грамотно оформить данный JS код?

    FFxSquall
    Михаил @FFxSquall
    Могу писать код, могу не писать
    Как-то так
    $(function() {
        $('.tab').on('click', function(e) {
            var $el = $(e.currentTarget);
            var $tabs = $el.closest('.tabs');
            var $content = $tabs.children('.tabs-content').children('.tabs-content-item');
            // Удаляем классы active
            $el.siblings().removeClass('active');
            $content.removeClass('active');
    
            // Добавляем классы active
            $el.addClass('active');
            $content.eq($el.index()).addClass('active');
        })
    
    });
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Как правильно составить условие наступления события в js?

    IonDen
    Денис Инешин @IonDen
    JavaScript developer. IonDen.com
    Помните что события вызываются последовательно. Что произошло перед драгстартом? Конечно же клик:

    onmousedown -> запомнили место
    ondragstart -> начали тащить
    ondragend -> дотащили
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как сделать косой срез блока?

    LenovoId
    Максим @LenovoId
    I want, women not to get sick
    1) https://codepen.io/LenskyUser/pen/LLPpxQ так
    2) https://codepen.io/LenskyUser/pen/vZBzWY?editors=1100
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как исправить блок с видео?

    webinar
    Максим Тимофеев @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Как задать Aspect Ratio для блока
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как определить шаблонизатор?

    profesor08
    profesor08 @profesor08 Куратор тега PHP
    Этот: ets.sourceforge.net?
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как вывести каждую строчку из файла на новой строчке?

    gubin_niko
    Nik Gubin @gubin_niko
    echo nl2br($file);
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как собрать такой массив из строки?

    Илья Караваев @Quieteroks
    php программист
    1) Использовать json и не писать свой парсер.
    2) Парсить строку функциями для работы со строками.
    3) Попробовать себя в парсинге при помощи регулярного выражения.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Можно ли по БЭМ вкладывать блок внутрь элемента?

    Ifelseapps
    Максим Павлов @Ifelseapps
    Frontend developer/JavaScript developer
    Можно, и миксовать на одной dom-ноде тоже можно.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Какой плагин range-слайдера подойдет?

    IonDen
    Денис Инешин @IonDen
    JavaScript developer. IonDen.com
    Ion.RangeSlider
    Позицию блоков с цифрами легко настроить через CSS, так чтобы они были поверх полоски.

    Пример: jsfiddle.net/IonDen/tLzou080

    Еще пример, тут блоки не выходят за границу ползунка: jsfiddle.net/IonDen/c8n8oynd
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Имеет ли смысл отражать вложенность элементов в верстке по BEM?

    i @ilyarsoftware
    Отражать вложенность элементов в названии класса это частая ошибка в понимании методологии.
    Правильнее придерживаться "аскетичности", точнее сказать, именно об этом и говорится в официальной документации.

    Префиксы в методологии не используется (см. историю развития), но и не противоречат ей, если они решают вашу задачу значит им место.

    Блок кроме элементов может содержать блоки и ничего не знает о своем расположении и внешних отступах, но знает о своих размерах и о своем внутреннем мире.
    Расположение блока определяет другой блок или элемент (для них это будет знание о своем внутренним мире).

    Все выше сказанное можно выразить в раскладке примерно так:

    .page // определяет свой внутренний мир и расположение своих элементов
        .page__header // определяем внутренние отступы
            .logo // ничего не знает о своем положении оно определяется в page__header
            .page__menu
                .menu // вполне самостоятельная переиспользуемая сущность
        .page__footer
            .logo_small // модификация знания про размер
            .menu_small // может иметь различные вариации (модификаторы)


    Раскладка не более чем наглядный пример кратких выдержек из методологии. В зависимости от задачи, чувстве прекрасного и пр. тоже самое можно реализовать иначе.

    Например элементы page__footer и page__header могут быть одним элементом page__section для которого реализованы модификации page__section_header и page__section_footer... хотя на этом возможности не заканчиваются, еще может быть так page__section_type_header и page__section_type_footer.

    Эта методология всего лишь принципы, подобно SOLID, а не спецификация.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Имеет ли смысл отражать вложенность элементов в верстке по BEM?

    sim3x
    sim3x @sim3x
    Тут смешалось два момента
    Префикс l- он для классов, которые управляют расположением блоков на странице layouts
    В его имени желательно указывать, где он находится

    А вот для блока (префикс b-) важно указать его назначение

    Причем префиксы стоит указывать, если проект находится в стадии миграции на BEM и имеет стили не в нотации BEM

    .l-page
        .l-page__header
            .company__logo
            .site__menu
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
Оценили как «Нравится»
Самые активные сегодня
  • Drno
    • 6 ответов
    • 1 вопрос
  • rPman
    • 6 ответов
    • 0 вопросов
  • vabka
    Василий Банников
    • 5 ответов
    • 0 вопросов
  • simplylinux
    • 2 ответа
    • 2 вопроса
  • sergey-gornostaev
    Сергей Горностаев
    • 3 ответа
    • 0 вопросов
  • SoreMix
    soremix
    • 3 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации