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

    Думаю для вашей задачи подойдет position: sticky на th элементе.

    Вот здесь можно почитать про него подробнее https://developer.mozilla.org/ru/docs/Web/CSS/position

    и проверить на соответствие вашему диапазону браузеров.
    Ответ написан
    1 комментарий
  • Таймер с обнулением в 00.00?

    const now = Date.now();
    const day = 1000 * 60 * 60 * 24;
    let checkpoint = now - (now % day) + day;
    
    function tick() {
        const time = new Date(checkpoint - Date.now());
    
        if (time < 0) {
          time += day;
          checkpoint += day;
        }
    
        console.log(time.toTimeString().slice(0, 8));
        
    }
    
    function loop() {
        tick();
        setTimeout(loop, 1000);
    }
    
    loop();
    Ответ написан
    2 комментария
  • Нужно ли мне изучать препроцессор(ы)?

    Нужно понимать что инструменты о которых вы говорите появились не просто так, а потому что в них была острая необходимость. Т.е. если у вас есть большой проект с объемным CSS и вам уже сложно уследить за единством оформления (в одном месте у кнопки бордер 1px в другом 2, и тому подобное), то вы невольно начинаете задумываться о том что неплохо было бы иметь в CSS настоящие переменные ($button_border_width).
    Таким образом если вы не чувствуете острой потребности в этих фишках - не стоит забивать ими голову - процесс обучения будет достаточно мучительным, потому что вы еще не будете понимать, куда все это можно впихнуть.
    Но! Безусловно стоит ознакомиться с основными фишками, которые могут добавить препроцессоры вашему коду. Вам не нужно знать как объявлять переменные и примеси, но нужно знать что это вообще возможно. Т.е. вам хватит парочки обзорных статей.

    Все вышесказанное относится так же и к сборщикам (gulp, grunt), с вопросом о которых, я думаю, вы пришли бы на Тостер через месяц.
    Ответ написан
    Комментировать
  • Зачем нужны таск менеджеры GULP и GRUNT?

    Мне кажется тут не хватает образного примера:

    Вот купили вы стул. До ужаса дешевый, а потому без инструкции по сборке. Помучились час другой, но собрали. И тут выясняется, что ваша подруга купила такой же стул, а собрать ума не хватает, и просит она вас. Вы уже опытный - за пол часа управились. Вы бы и быстрее управились, но все никак не могли найти куда присобачить последний шуруп.
    Потом случилось страшное - почти вся ваша родня узнала о дешевых стульях, и помчалась их покупать, а за советом как собирать их, как вы уже догадались, обращается к вам. Конечно разъезжать из дома в дом по столь неуважительной причине вам не с руки, вот тогда вы написали инструкцию и разослали ее всем по факсу.
    Время шло, город слухами полнился, и вот уже совершенно незнакомые люди обращаются к вам с просьбой какой либо предмет мебели. До поры до времени инструкции спасали, но потом нахлынула толпа бабушек, которым ваши каракули как пергамент на древнеегипетском...
    На этом этапе вы решили уволиться с основной работы и открыть собственное дело по производству роботов-сборщиков (не путайте с роботами-сгибателями). Вам звонят бабушки, а вы им высылаете свои агрегаты, подчас загружая в них инструкцию по строительству дома.

    Вот и сказочке конец, а кто слушал, тот и gulp.

    Простите - пятница.
    Ответ написан
    Комментировать
  • Конструктор глобального "асоциативного" масива на JavaScript как создать?

    var events = {};
    
    function eventsAdd (dateid, time, todo) {
      var date = events[dateid] || events[dateid] = [];
      date.push({
        time: time, 
        todo: todo
      });
    }
    Ответ написан
    Комментировать